owned this note
owned this note
Published
Linked with GitHub
---
title: Тема 1. Основы языка программирования Python
tags: Python Step
slideOptions:
allottedMinutes: 80
theme: beige
slideNumber: c
spotlight:
enabled: true
---
## ++Тема 1++<br>Основы языка программирования Python
(c) Яценко Р.Н., 2019-2020
---
## 1. История языка программирования Python
----
### Знакомство с Python
**Python** - мощный и простой в использовании язык программирования, разработанный *Гвидо ван Россумом (Guido van Rossum)*
Первый релиз системы вышел в *1991 году*
На Python можно быстро написать небольшой проект, а вообще он
применим к проектам любого масштаба, в том числе коммерческим приложениям
и программам, нацеленным на ответственные задачи
----
### Символы Python
Язык был назван в честь об английском коллективе комических актеров «Монти
Пайтон» (Monty Python)
Официальным символом языка стала змейка питон

---
## 2. Преимущества Python
----
### Python прост в использовании
Базовая цель любого языка программирования -- построить «мостик» между мозгом
программиста и компьютером
----
Создание программ на Python настолько незамысловатый
процесс, что о нем иногда говорят как о «программировании со скоростью мысли».
С точки зрения профессионального программиста, легкость Python - залог высокой
производительности труда: *программы на Python короткие и требуют меньше времени на разработку*, чем программы на многих других популярных языках
----
### Python -- мощный язык
Python обладает *всеми возможностями, которых следует ожидать от современного языка программирования*. Вы научитесь пользоваться разнообразными структурами данных и писать программы с GUI и файлами состояния
----
Благодаря своей мощности Python привлекает разработчиков со всего мира.
Им пользуются крупнейшие компании: Google, IВМ, Industrial Light + Magic,
Microsoft, NASA, Red Hat, Verizon, Xerox и Yahoo!
Профессиональные разработчики игр также применяют Python. Electronic Arts, 2К Games и Disney Interactive Media Group -- все эти компании публикуют игры с кодом на Python
----
### Python -- объектно-ориентированный язык
*Обьектно-ориентированное программирование* (ООП) -- современный подход к решению задач с помощью компьютеров. В рамках ООП собственная информация программы и команды, которые она передает компьютеру, записываются интуитивно понятным образом
В С# и java ООП-подход проводится неукоснительно. Это делает короткие программы избыточно сложными. В Python ООП-приемами пользоваться не обязательно
----
### Python -- «склеивающий» язык
*Python легко интегрировать с другими языками*, например С#, С++ или jаvа. Таким
образом, программист на Python может пользоваться разработками, уже имеющимися на других языках, и обращать в свою пользу сильные стороны этих языков
(скажем, быстродействие С++), не поступаясь простотой разработки - отличительной чертой Python
----
### Python работает на всех платформах
*Программы на Python независимы от платформы*, то есть неважно, какой операционной системой пользовался разработчик программы: код может быть исполнен на любом компьютере с установленным интерпретатором Python
----
### Python -- бесплатная система с открытым исходным кодом
*Интерпретатор Python бесплатен*. Чтобы установить его и пользоваться им, не надо
платить ни копейки
Следование концепции открытого исходного кода -- одна из многих особенностей, делающих Python столь популярным и успешным
---
## 3. Основные элементы языка
----
### Алфавит языка программирования Python
- прописные и строчные буквы английского алфавита `А - Z, a - z`
- цифры `от 0 до 9`
- символ подчеркивания `_`
- неотображаемые символы `пробел, табуляция, переход на новую строку`
- специальные символы `# / \ + - * % = < > & | ^ ~ ! () [] {} , : . ; @ ' "`
----
### Другие символы
Остальные символы не принято использовать для построения команд программы
Они могут использоваться в строковых константах, а также в комментариях
----
### Ключевые слова
Имеют строго определенное назначение, которое не может быть изменено. Поэтому их использование в языке Python не по назначению не допускается
----
### Список ключевых слов
**False None True and as assert break class continue def del elif else except finally for from global if import in is lambda nonlocal not or pass raise return try while with yield**
----
### Элементы данных
Вся информация, хранящаяся в памяти компьютера, состоит из *элементов данных*, которые имеют форму чисел, символов, текстов и т.д.
Каждый такой элемент данных должен быть обозначен уникальным именем -- *идентификатором*
----
### Идентификатор
**Идентификатор** -- это имя программного элемента данных: переменной, константы, модуля, функции, класса и т. п.
----
### Правила идентификаторов
1. Первый символ может быть любой алфавитный символ ASCII, символ нижнего подчеркивания
2. Далее в имени можно использовать как алфавитные, так и числовые символы, за исключением пробела
3. В качестве имени нельзя использовать ключевые слова
4. Нельзя использовать два подряд символа нижнего подчеркивания в начале и в конце идентификатора
----
### Регистр символов
Идентификаторы чувствительны к регистру, поэтому это пять разных идентификаторов
`TAXRATE Taxrate TaxRate taxRate taxrate`
----
### Правильные идентификаторы
- `myVariable`
- `my_variable`
- `stop`
- `Upr_12_1_2_3_`
----
### Неправильные идентификаторы:
- `MyVariable#`
содержит недопустимый символ `#`
- `my-variable`
содержит недопустимый символ `–`
- `1_2_3_`
начинается с цифры
----
### Комментарии в Python
Строки комментариев начинаются с символа `#`
Комментарии игнорируются интерпретатором
```python
# Текст программы говорит о том, как, а комментарии должны объяснять, почему
```
----
### PEP 8
Этот документ описывает соглашение о том, как писать код для языка Python
[PEP 8](https://pythonworld.ru/osnovy/pep-8-rukovodstvo-po-napisaniyu-koda-na-python.html) создан на основе рекомендаций Гуидо ван Россума. Ключевая идея:
*код читается намного больше раз, чем пишется. Собственно, рекомендации о стиле написания кода направлены на то, чтобы улучшить читаемость кода и сделать его согласованным между большим числом проектов. В идеале, весь код будет написан в едином стиле, и любой сможет легко его прочесть*
---
## 4. Структура программы
----
### Текст программы
Программа на Python представляет из себя последовательность команд для
ввода данных, вычислений и других операций с данными и вывода результатов
Простые команды (операторы) принято записывать по одной строке на оператор.
В составных операторах большую роль играют пробелы в начале строки (отступы)
----
### Пример программы
```python
# Привет, Мир (Что?)
# Максим Скворцов (Кто?)
# 22.09.2018 (Когда?)
print("Hello, World!")
```
----
### Редактор
Программа создаётся в виде текстового файла в любом текстовом редакторе.
Использование *интегрированных сред разработки* (IDE) обеспечивает подсветку
синтаксиса и выделение особенностей структуры программы, а также упрощает
поиск ошибок в написании команд. Мы будем использовать \
**Visual Studio Code**
Файл с программой должен иметь расширение `.py` (например, `my_program.py`)
---
## 5. The Zen of Python
----
### Команда import this
- Красивое лучше, чем уродливое.
- Явное лучше, чем неявное.
- Простое лучше, чем сложное.
- Сложное лучше, чем запутанное.
- Плоское лучше, чем вложенное.
- Разреженное лучше, чем плотное.
- Читаемость имеет значение.
- Особые случаи не настолько особые, чтобы нарушать правила.
- При этом практичность важнее безупречности.
----
- Ошибки никогда не должны замалчиваться.
- Если не замалчиваются явно.
- Встретив двусмысленность, отбрось искушение угадать.
- Должен существовать один — и, желательно, только один — очевидный способ сделать это.
- Хотя он поначалу может быть и не очевиден, если вы не голландец.
- Сейчас лучше, чем никогда.
- Хотя никогда зачастую лучше, чем прямо сейчас.
----
- Если реализацию сложно объяснить — идея плоха.
- Если реализацию легко объяснить — идея, возможно, хороша.
- Пространства имён — отличная штука! Будем делать их побольше!
---
## Спасибо за внимание!

(c) Яценко Р.Н., 2019-2020