Материалы курса “Скриптовое программирование на языке Python”
- Лекция 1 - Введение
- Anaconda, IDEs
- PVM
- Особенности управления памятью в CPython
- Основные синтаксические элементы языка
- Case-study (количество нулей в конце 100!)
- PEP8, autopep
- Лекция 2 - Типы данных
- Списки, кортежи, строки, словари, множества
- Comprehensions
- Слайсы
- Лекция 3 - Модули и пакеты
- Организация кода в проекте
- Примеры модулей: random, math, datetime, re, itertools
- Лекция 4 - Элементы функционального программирования
- Синтаксис функций
- Правило LEGB
- Итераторы и генераторы
- Лямбда-функции
- Функции filter, map, reduce, zip
- Модуль itertools (is back)
- Декораторы
- Модуль functools
- Лекция 5 - Файловый ввод-вывод и работа с файловой системой
- Работа с файлами
- Модули os, shutil
- Модули glob, pathlib
- Сериализация: pickle, JSON
- Работа с XML
- ZIP-архивация, модуль zipfile
- Лекция 6 - Работа с процессами и операционной системой
- Аргументы командной строки, модуль sys
- Модуль argparse
- Модуль ConfigParser
- Модуль subprocess
- Перенаправление потоков ввода-вывода
- Лекция 7 - Объектно-ориентированное программирование
- Особенности инкапсуляции, наследования и полиморфизма в Python
- Динамическое создание классов
- Метаклассы
__slots__
- Пользовательские исключения
- Менеджеры контекста
- Глубокое копирование
- Декораторы через классы
- Класс enum
- Модуль attrs
- Лекция 8 - Бинарные данные и юникод
- Модуль struct
- Модуль io и класс BytesIO
- Строки и байты
- Лекция 9 - Скрипты с GUI
- Лекция 10 - Работа с базами данных
- Выполнение SQL-запросов
- ORM на примере SQLAlchemy
- Немного о noSql на примере Mongo
- Лекция 11 - Многопоточное и асинхронное программирование
- Модуль threading
- Механизмы синхронизации
- Очереди, Producer/Consumer
- Глобальная блокировка интерпретатора (GIL)
- Асинхронность в Python
- Модуль asyncio
- Лекция 12 - Работа с сетью
- TCP/IP, сокеты
- CGI
- Модули requests и BeautifulSoup
- aiohttp
- websockets
- flask
- scrapy
- Лекция 13 - Визуализация данных
- Библиотека matplotlib
- Еще визуализации: seaborn, bokeh, NetworkX
- Лекция 14 - Научно-исследовательские библиотеки
- Библиотека numpy
- Библиотека scipy
- Библиотека sympy
- Библиотека pandas
- Библиотека scikit-learn