1.41M
Category: programmingprogramming

Конспекты

1.

2.

План занятия
1
Языки программирования
2
Python. Преимущества и недостатки
3
Установка Python. IDLE. PyCharm
4
Переменные. Модель данных
5
Ввод и вывод данных

3.

Языки программирования
Язык программирования:
набор определенных правил, по которым компьютер может понимать команды (инструкции)
и выполнять их. Текст программы на любом языке
программирования, называется программным кодом;
служит для того, чтобы «переговариваться» с компьютером,
используя команды, понятные и компьютеру, и человеку;
знаковая система для планирования поведения компьютера.
Языки программирования делятся на компилируемые и интерпретируемые:
Если программа написана на компилируемом языке (C, C++, Pascal), то перед выполнением
её нужно полностью проверить на наличие синтаксических ошибок и уже после этого
перевести в понятную для компьютера форму - машинный код. Это делает специальная
программа, которая называется компилятором.
Если программа написана на интерпретируемом языке (Python, PHP, Ruby), она не
переводится в машинный код целиком. Вместо этого специальная программа, которая
называется интерпретатором, идет по коду, анализирует его и выполняет каждую
отдельную команду.
Есть языки программирования, которые совмещают оба подхода (C#, Java). В таких языках
код исходной программы сначала компилируется в промежуточный код (байт-код), а уже
потом, во время выполнения, переводится в машинный код.

4.

Языки программирования
По принципу написания программного кода языки делятся на:
Императивные языки программирования. Программа включает последовательность
операторов или команд (инструкций). Каждая инструкция меняет содержимое памяти
компьютера. Наиболее известными представителями императивных языков являются C++,
С, С#, Basic, Pascal, Fortran, Algol.
Функциональные языки программирования (ФЯП). Блок программы состоит из вложенных
друг в друга последовательностей функций. Однако их использование считается
неэффективным. Hascel, Miranda, Metalanguage (ML), Scheme, LISP.
Объектные или объектно-ориентированные языки программирования. Суть заключается
в описании объектов в виде классов, имеющих свои свойства, атрибуты, и к которым можно
применять собственные методы для изменения этих свойств. Наиболее известными такими
языками являются Delphi, Java, Ada и ряд других
Python, которому будет данный курс посвящен настоящее
учебное пособие, совмещает в себе возможность
использования объектно-ориентированного подхода и
обычного алгоритмического подхода и включает как
процедурное, так и функциональное программирование.

5.

Рождение Python
Язык Python был разработан голландским программистом Гвидо Ван Россумом в 1991 году. Он
был поклонником британского комедийного сериала «Monty Python’s Flying Circus», откуда и
пришло название языка.

6.

Области применения Python
Системное программирование. Встроенные в Python интерфейсы доступа к службам
операционных систем делают его идеальным инструментом для создания переносимых
программ и утилит системного администрирования;
Графические приложения. Простота Python и быстрота разработки делают его отличным
средством создания графического интерфейса. В состав Python входит стандартный
объектно-ориентированный интерфейс к GUI API;
Веб-приложения. С помощью дополнительных фреймворков на языке Python (Django, Flask,
Pyramid) можно создавать полнофункциональные сайты;
Веб-сценарии. Python поставляется вместе со стандартными интернет-модулями, которые
позволяют программам выполнять разнообразные сетевые операции как в режиме клиента,
так и в режиме сервера;
Интеграция компонентов. Возможность Python расширяться и встраиваться в системы на
языке C++ делает его удобным для описания поведения других систем и компонентов;
Приложения баз данных. В Python имеются интерфейсы доступа ко всем основным
реляционным базам данных: Sybase, Oracle, Informix, ODBC, MySQL, PostgreSQL, SQLite и
многим другим. С их помощью можно создавать приложения баз данных.

7.

Преимущества и недостатки Python
Преимущества:
• интерпретируемый язык программирования (не требует отдельного этапа компиляции);
• высокоуровневый язык программирования;
• кроссплатформенный язык (программы на Python можно создавать и запускать на разных
операционных системах (Linux, Windows, OS X);
• open source проект;
• встраиваемый скриптовый язык;
• динамический язык, что упрощает написание несложных программ;
• существует огромная библиотека классов на любой вкус.
Недостатки:
• Низкая скорость выполнения по сравнению с такими языками, как C и C++;
• Динамическая типизация языка - минус при написании сложных программ.

8.

Немного о динамической типизации
Динамическая типизация - приём, используемый в языках программирования и, при котором
переменная связывается с типом в момент присваивания значения, а не в момент объявления
переменной. Таким образом, в различных участках программы одна и та же переменная может
принимать значения разных типов.
Преимущества:
расширяет возможности использования
переменных
избавляет программиста от хлопот,
связанных с объявлением и контролем
соответствия типов
позволяет создавать более универсальные и
проще интегрируемые программные модули
Недостатки:
понижает надежность вычислений
снижает скорость вычислений
возрастают затраты памяти
Повышает ответственность программиста

9.

Переменные
Переменная - это нечто такое, что нужно запомнить вашему компьютеру на время работы
программы. Когда Python «запоминает» что-либо, он сохраняет эту информацию в памяти
компьютера. Python может запоминать значения нескольких типов, например числовые
значения
(такие как 7, 42 или даже 28,3) и строки (буквы, символы, слова, предложения - все, что вы можете набрать на клавиатуре). В Python, как и в большинстве современных языков программирования, мы присваиваем значение переменной с помощью знака равенства (=). Выражение
присваивания, такое как x = 7, говорит компьютеру запомнить число 7 и вывести его при
каждом вызове переменной x. Мы также используем знак равенства для присвоения
переменной строки символов, главное - не забыть заключить присваиваемую строку в кавычки
(").
Переменная - это поименованная область памяти, содержащая какое-то значение. Для
простоты можете представить, что переменная - это такая «коробка», в которой вы можете
хранить значения.
Что касается имен переменных, то есть два основных правила:
1. Имя переменной должно начинаться с буквы.
2. Имя переменной может состоять только из цифр, букв и знаков подчеркивания.
3. Имена переменных в Python чувствительны к регистру.

10.

Переменные
Рекомендации по использованию переменных:
Хотя переменную можно объявить в любом месте программы, но до первого использования,
рекомендуется объявлять переменные в начале программы.
Имя переменной должно описывать ее суть.
Придерживайтесь одной и той же схемы именования переменных. Например, если вы уже
назвали переменную high_score (нижний регистр и знак подчеркивания), то переменную,
содержащую текущий счет пользователя называйте user_score, но никак не userScore.
Традиции языка Python рекомендую начинать имя переменной со строчной буквы и не
использовать знак подчеркивания в качестве первого символа в имени переменной. Все
остальное - считается дурным тоном.
Не создавайте слишком длинные имена переменных. В таких именах очень легко допустить
опечатку, что не очень хорошо. Максимальная рекомендуемая длина имени переменной - 15
символов.
В качестве названия переменных запрещено использовать ключевые (зарезервированные)
слова.

11.

Модель данных
В Python используется ссылочная модель данных. В языке Python, все переменные - ссылки
на объекты, хранящиеся в оперативной памяти
При инициализации переменной, на уровне
интерпретатора, происходит следующее:
создается целочисленный объект 5
(можно представить, что в этот момент
создается ячейка и 5 кладется в эту
ячейку);
данный объект имеет некоторый
идентификатор, значение: 5, и тип: целое
число;
посредством оператора “=” создается
ссылка между переменной b и
целочисленным объектом 5 (переменная b
ссылается на объект 5).

12.

Множественное присваивание
В языке Python можно за одну инструкцию присваивания изменять значение сразу
нескольких переменных.
Если слева от знака «равно» в множественном присваивании должны стоять через запятую
имена переменных, то справа могут стоять произвольные выражения, разделённые запятыми.
Главное, чтобы слева и справа от знака присваивания было одинаковое число элементов.
Множественное присваивание удобно использовать, когда нужно обменять значения двух
переменных.

13.

Области применения Python
Компания Google использует Python в своей поисковой системе;
Компании Intel, Cisco, Hewlett-Packard, Seagate, Qualcomm и IBM, используют Python для
тестирования аппаратного обеспечения;
Сервис YouTube в значительной степени реализован на Python;
Агентство национальной безопасности (NSA) использует Python для шифрования и анализа
данных;
Компании JPMorgan Chase, UBS, Getco и Citadel применяют Python для прогнозирования
финансового рынка;
Программа BitTorrent для обмена файлами в пиринговых сетях написана на языке Python;
NASA, Los Alamos, JPL и Fermilab используют Python для научных вычислений.

14.

Установка Python
1 Скачайте установщик Python 3
https://www.python.org/downloads/
Python, начиная с версии 3.9.x, работает только с Windows 10. Выбирайте версию,
которая подходит к вашей Windows.
2 Установите Python 3
В процессе установки поставьте галочку (если нет) напротив пункта
Add Python 3.x to PATH
3 Скачайте и установите среду разработки PyCharm
https://www.jetbrains.com/ru-ru/pycharm/

15.

Организация вывода
Для вывода данных на экран используется команда print().
Внутри круглых скобок пишем то, что хотим вывести на экран. Если это текст, то обязательно
указываем его внутри кавычек. Кавычки могут быть одинарными или двойными. Только
обязательно ставим одинаковые до и после текста. То что находиться в круглых скобках
называется аргументами или параметрами. Каждая последующая команда print() выводит
указанный текст с новой строки.
Команда print() с пустым списком аргументов просто вставляет новую пустую строку.
Почему в Python можно использовать как одинарные, так и двойные кавычки для обрамления
текста? Если в тексте нужны одинарные кавычки, то для обрамления такого текста используем
двойные кавычки. Если в тексте нужны двойные кавычки, то обрамляем его одинарными.
По умолчанию команда print() принимает несколько аргументов (параметров), выводит их
через один пробел, после чего ставит перевод строки. Это поведение можно изменить,
используя необязательные именованные параметры sep (separator, разделитель) и end
(окончание).

16.

Организация вывода
Выполните следующий программный код:
print('а', 'б', 'в')
print('а', 'б', 'в', sep='*')
print('а', 'б', 'в', sep='$')
Если перевод строки делать не нужно или требуется указать специальное окончание, то следует
явно указать значение для параметра end.
Выполните следующий программный код:
print('а', 'б', 'в')
print('а', 'б', 'в', end='$')
print('а', 'б', 'в', end='$$')
Параметры sep и end можно использовать вместе.
print('а', 'б', 'в', sep='*', end='$$’)
Значения по умолчанию у параметров sep и end следующие:
sep=' ' # пробел
end='\n' # перевод строки

17.

Экранируемые символы
Экранируемые символы позволяют выводить специальные символы, которые трудно или
невозможно обычным образом вставить в исходный код. К примеру, к таким символам
относится одиночная кавычка в строковом значении, которое само по себе начинается и
заканчивается одинарными кавычками. Обратный слеш означает, что символ, указанный
следом, экранируемый.
Экранированный символ
На экран выводится
\\
Обратный слеш (\)
\'
Одинарная кавычка (')
\"
Двойные кавычки (")
\n
Новая строка
\t
Табуляция

18.

Организация ввода
Для считывания данных в языке Python используется команда input()
Команда input() всегда пишется с круглыми скобками. Она работает так: когда программа
доходит до места, где есть input(), она ждет, пока пользователь введёт текст с клавиатуры (ввод
завершается нажатием клавиши Enter). Введенная строка подставляется на место input()
Очень часто перед считыванием данных печатается некоторый текст, чтобы пользователь,
который вводит эти данные понимал, что именно от него требуется. Поскольку это достаточно
распространённый сценарий, то в языке Python можно выводить текст, передавая его в качестве
параметра в команду input().
Результат input() всегда строка. Необходимо делать преобразование типов.
Сравните
print('Как тебя зовут?')
name = input()
print('Привет,', name)
name = input('Как тебя зовут? ')
print('Привет,', name)

19.

Практика
1 Напишите интерактивную программу, которая будет запрашивать соответствующие
данные о студенте (Ф.И.О., дата рождения, адрес (можно только город, а затем выводить
их на экран монитора.
2 Напишите программу, которая выводит на экран текст I***like***Academy Step (без
кавычек).
3 Напишите программу, которая принимает целое число и выводит текст, аналогичный
приведенному в примере (обратите внимание на пробелы!!!)
Ввод:
9
Вывод:
Следующее число за числом 9 – это 10.
Предыдущее число перед 9 – это 8.
4 Напишите программу, которая выводит прямоугольник, по периметру состоящий из
звездочек (*). Высота и ширина прямоугольника равны 4 и 17 звёздочкам соответственно.

20.

Практика
ДЗ Напишите программу, которая считывает строку-разделитель (разделитель по
вариантам) и три строки, а затем выводит указанные строки через разделитель. На вход
программе подаётся строка-разделитель и три строки, каждая на отдельной строке.
Программа должна вывести введённые три строки через разделитель.
ПРИМЕР
Ввод:
*
Раз
Два
Три
Вывод:
Раз*Два*Три
Вариант
1 2 3 4 5 6 7 8 9 10
Разделитель $ % ^ & @ ! @@ # && ?
English     Русский Rules