Командный интерпретатор; простые типы данных; управление ходом выполнения
TODO
История Python. Командная строка
- Влияние ЯП 80-х годов на концепцию Python (ABC, Modula, ...)
Мощность сообщества и кодовой базы, стандартный модули и Python Package Index
- Свободное лицензирование
Работа в командной строке
- Командная строка - калькулятор
- Подсистема помощи
Просто help()
Команда help(объект) и что она делает
- Интерактивная HTML-документация
- Объекты Python
- Создание объектов при интерпретации команд
Имена объектов и счётчик ссылок (sys.getrefcount)
Операция = как операция именования a == b vs. a is b
- Изменение объекта по любому из имён
Области видимости, функция dir() и dir(объект)
- Различные удобства ЯП, возникающие уже в командной строке
- «Продвинутые» командные надстройки:
Настройка командной строки
- История, поиск по истории (^R)
- Достраивание имён
- Файлы:
.bashrc:
. . . export PYTHONSTARTUP=$HOME/.pythonstartup . . .
Логические операции, операторы ветвления и цикла
Неявная динамическая типизация в Python
- Любые функции (методы) применимы к любым объектам
- Если в процессе выполнения происходит обращение к несуществующему объекту (полю), активизируется исключение
- Проверка существования объекта (поля) происходит в момент обращения к енму
(дополнительно) Все операции над объектами (типа +, [ , () и т. п.) — спецметоды объектов
Логические выражения
Сравнение, в т. ч. сравнение любого объекта с любым, операция is
Тип bool и операции and, or и not, условные вычисления
Понятие о нулевом элементе (класса) и методе __nonzero__
Операции and и or для произвольных объектов
- блеск и нищета конструкции вида a = b and c or d
Множественное присваивание
Конструкции типа a,b,c=d,e,f=1,2,"". Атомарность множественного присваивания и a,b=b,a
Условный оператор и операторы цикла
- Понятие «блок с отступом» (indented block)
Оператор if/elif/else, неструктурная сущность elif
Оператор while/break/continue. Клауза else.
Оператор for по итерируемому объекту (__iter__). Клауза else на примере задачи поиска.
Д/З
- Прочитать
- Задачи