Python 5SE осень 2021

Материал из CSC Wiki
Перейти к:навигация, поиск

Преподаватель: Зубаков Алексей Васильевич

  • tg: @neprav
  • aleks.zubakov@gmail.com

Табличка с успеваемостью

Слайды

Неделя 1. Встроенные типы: логические, числовые, строковые, коллекции. Truthy/Falsy значения. Слайсы. Базовые конструкции и особенности.

Неделя 2. Всё, что вы хотели знать про функции, но боялись спросить: как функции вычисляются, разрешение имён, функция как объект, все виды аргументов, globals и locals.

Неделя 3. Декораторы: определение, правильное и безопасное написание декоратора, декораторы с опциональными аргументами. Примеры декораторов.

Неделя 4. Строки, байты и кодировки. Ввод-вывод, работа с файлами.

Неделя 5. Введение в классы. Определение класса, отсутствие модификаторов доступа и декоратор property. Магические методы. Враньё про поиск атрибутов. Связанные(bound) и несвязанные (unbound) методы. Наследование, классы-примеси и method resolution order.

На самостоятельное изучение: менеджеры контекста.

Неделя 6. Итераторы и генераторы. Как устроен цикл for. Определение iterable и iterator. Генераторы и генераторные выражения. Примеры. Встроенные функции для работы с iterable и модуль itertools.

Неделя 7. Корутины: корутина >= генератор, `async/await`. Немного про многопоточность и GIL в python. Примеры.

Неделя 8. Продолжение про классы. Поиск атрибутов на самом деле, дескрипторы, `__slots__`. Как создаются классы и всё, что нужно знать про метаклассы.

Опциональные темы:

  • Модули, пакеты, пакетный менеджер pip и виртуальные окружения.
  • Модуль collections
  • Подробно про обработку исключений
  • Тестирование
  • Сборка мусора в python