Python
- Теория
- I. Интерпретатор Python
- II. Основы Python
- 1. Типы, числа, операторы
- 2. Строки
- 2.1. Строки. Общие понятия. Объявление строки. Операции над строками. Примеры
- 2.2. Экранированные последовательности. Неформатированные строки. Многострочные блоки текста
- 2.3. Доступ по индексам. Срезы. Получение фрагмента строки. Примеры
- 2.4. Встроенные функции для работы со строками
- 2.5. Класс str. Функции работы со строками
- 2.5.1. Функции для работы со строками, определяющие особенности строки: isalnum(), isalpha(), isascii(), isdecimal(), isdigit(), isidentifier(), islower(), isnumeric(), isprintable(), isspace(), istitle(), isupper()
- 2.5.2. Функции поиска и замены подстроки в строке: count(), find(), index(), rfind(), rindex(), replace()
- 2.5.3. Функции обрабатывающие и определяющие начало и конец строки: endswith(), startswith(), lstrip(), rstrip(), strip()
- 2.5.4. Функции обработки строки в соответствии с форматом или правилом кодирования: encode(), expandtabs(), format(). Стили форматирования
- 2.5.5. Функции выравнивания строк: center(), ljust(), rjust(), zfill()
- 2.5.6. Функции обрабатывающие регистр символов в строке: capitalize(), casefold(), lower(), swapcase(), title(), upper()
- 2.5.7. Функции разбивки строк на части и образования новых строк с помощью кортежей и списков: join(), partition(), rpartition(), rsplit(), split(), splitlines()
- 2.6. Операции форматирования строк. Выражения форматирования строк. Бинарный оператор %
- 3. Списки
- 3.1. Списки. Свойства списков. Примеры демонстрирующие свойства списков
- 3.2. Операции над списками. Конкатенация (+), дублирование (*), удаление, срез, доступ по индексу
- 3.3. Обработка списков в циклах. Создание списков с помощью генераторов списков. Итерации по списках. Обработка матриц. Операция in
- 3.4. Методы работы со списками. Примеры
- 3.5. Объекты-итераторы. Использование итераторов и генераторов для списков. Функции range(), next(), iter()
- 4. Словари
- 4.1. Словари. Основные понятия. Характеристики. Создание словарей. Доступ к значениям в словаре
- 4.2. Встроенные функции и операции обработки словарей
- 4.3. Методы работы со словарями
- 4.4. Работа со словарями. Встроенные функции list(), zip(). Обход словаря. Генераторы словарей. Сортировка. Сочетание словарей с множествами
- 5. Кортежи
- 6. Файлы
- 6.1. Файлы. Общие понятия. Открытие/закрытие файла. Функции open(), close()
- 6.2. Примеры работы с текстовыми файлами
- 6.3. Примеры работы с бинарными файлами
- 6.4. Модуль struct. Работа с бинарными файлами. Примеры сохранения/чтения упакованных двоичных данных
- 6.5. Модуль pickle. Сериализация объектов. Примеры использования для записи/чтения информации из бинарных файлов
- 6.6. Примеры решения задач на модификацию текстовых файлов
- 7. Множества
- 7.1. Основные понятия. Создание множества. Операция in. Операции над множествами создающие новое множество
- 7.2. Операции и функции для определения надмножеств и подмножеств. Сравнение множеств
- 7.3. Классы set, frozenset. Функции для работы с множествами. Назначение. Примеры
- 7.4. Ограничения на применение множеств. Применение класса frozenset. Генераторы множеств
- 9. Управляющие инструкции
- 10. Функции. Видимость имен
- 10.1. Понятие функции. Общая форма. Примеры объявления и использования функций
- 10.2. Области видимости имен. Локальные имена. Правила видимости имен. Правило LEGB. Ключевое слово global. Переопределение имен в функциях
- 10.3. Вложенные функции. Вложенные области видимости. Правила поиска имен в случае вложенных функций. Фабричные функции. Передача значений во вложенную функцию
- 10.4. Ключевое слово nonlocal. Особенности использования. Примеры
- 10.5. Аргументы в функциях
- 10.5.1. Передача аргументов в функцию. Изменение аргументов в теле функции
- 10.5.2. Режимы сопоставления аргументов. Классификация. Сопоставление по позиции. Сопоставление по именам. Аргументы по умолчанию
- 10.5.3. Режимы сопоставления аргументов. Аргументы переменной длины. Комбинирование разных способов сопоставления аргументов. Примеры
- 10.6. Рекомендации по правильному структурированию программ с помощью функций. Неявный вызов функции. Примеры
- 10.7. Передача функции как аргумента. Структуры данных, содержащих перечень функций. Возврат функции из другой функции оператором return. Примеры
- 10.8. Рекурсия в Python. Примеры решения задач
- 11. Анонимные функции. Лямбда-выражения
- 11.1. Лямбда-выражения. Анонимные функции. Ключевое слово lambda. Таблица переходов
- 11.2. Аргументы по умолчанию в лямбда-выражениях. Лямбда-выражения в теле объемлющей функции. Вложенные лямбда-выражения
- 11.3. Реализация сложной логики в лямбда-выражениях. Проверка условия. Применение лямбда-выражений для последовательностей. Функции map(), filter(), reduce()
- 12. Классы
- 12.1. Классы в Python. Общие понятия. Ключевое слово class. Объекты классов. Объекты экземпляров
- 12.2. Наследование в классах. Правила применения наследования. Примеры
- 12.3. Классы и модули. Обращение к классам других модулей
- 12.4. Перегрузка операторов
- 12.4.1. Перегрузка операторов в классах. Общие сведения. Методы, перегружающие операторы. Примеры
- 12.4.2. Доступ к элементам по индексу. Методы __getitem__() и __setitem()__
- 12.4.3. Перегрузка бинарных арифметических операторов в классах: +, –, *, /, //, %
- 12.4.4. Перегрузка сокращенных операторов присваивания +=, -=, *=, /=, //=, %=
- 13. Генераторы. Итераторы
- 13.1. Генераторы списков. Общие сведения
- 13.2. Генераторы списков для матричных операций. Примеры
- 13.3. Функции-генераторы. Инструкция yield. Методы next(), iter(), send()
- 13.4. Выражения-генераторы. Отличия между выражением-генератором и генератором списков
- 13.5. Использование стандартных функций в сочетании с выражениями-генераторами. Функции sum(), sorted(), map(), all(), any(), min(), max(), filter(), zip(), enumerate()
- 13.6. Генераторы множеств. Генераторы словарей. Множества и выражения-генераторы. Примеры
- 13.7. Использование вложенных конструкций if, for в генераторах списков, множеств и словарей
- 14. Модули
- III. Стандартная библиотека Python
- 1. Модуль io. Иерархия классов. Класс IOBase. Методы работы с файлами
- 2. Модуль math
- 3. Модуль random
- 4. Модуль struct. Упаковка/распаковка данных. Базовые методы модуля
- 5. Модуль cmath. Комплексные числа
- Практика
- 1. Примеры решения задач
- 1.1. Обработка целых чисел
- 1.2. Строки символов
- 1. Примеры решения задач
⇑