Аннотация
Это второй курс в серии тренингов, посвященных языку программирования Python и его последующему применению в прикладных и практических задачах типа machine learning, big data, в задачах, связанных с информационной безопасностью и web-разработкой. Он даёт представление о его синтаксисе, значительном числе используемых Python-разработчиками возможностей и особенностей.
Значительное внимание уделяется объяснению парадигмы объектно-ориентированного программирования и её реализации в языке Python. Познакомимся с тем как работать с коллекциями, множеством стандартных типов данных, итераторами и генераторами. Погружение в работу с модулями и библиотеками. Объясняется работа с исключениями в Python. Поработаем с файлами, сериализацией объектов в текстовом и бинарном виде, чтением данных из популярного формата JSON. Функциональное программирования в языке Python. Многопоточные вычисления. Устройство интерпретатора языка Python.
Необходимая предварительная подготовка:
Значительное внимание уделяется объяснению парадигмы объектно-ориентированного программирования и её реализации в языке Python. Познакомимся с тем как работать с коллекциями, множеством стандартных типов данных, итераторами и генераторами. Погружение в работу с модулями и библиотеками. Объясняется работа с исключениями в Python. Поработаем с файлами, сериализацией объектов в текстовом и бинарном виде, чтением данных из популярного формата JSON. Функциональное программирования в языке Python. Многопоточные вычисления. Устройство интерпретатора языка Python.
Необходимая предварительная подготовка:
Программа:
1. Введение в ООП, понятие классов и объектов
- Понятие ООП
- Классы и объекты
- Создание экземпляров классов
- Методы классов
- Конструкторы и специальные методы в Pytho
- Переопределение методов
- Инкапсуляция 1. Введение в ООП, понятие классов и объектов
- Понятие ООП
- Классы и объекты
- Создание экземпляров классов
- Методы классов
- Конструкторы и специальные методы в Pytho
- Переопределение методов
2. ООП. Наследование, полиморфизм
- Наследование и полиморфизм
- Множественное наследование
- Множественное наследование нескольких классов
- Порядок разрешения методов, линеаризация класса
- Наследование и полиморфизм
- Множественное наследование
- Множественное наследование нескольких классов
- Порядок разрешения методов, линеаризация класса
- Метод super()
3. Исключения
- Исключения
- Обработка исключений
- Выброс исключений
- Синтаксические ошибки
- Множественные искключения
- Пользовательские исключения
3. Исключения
- Исключения
- Обработка исключений
- Выброс исключений
- Синтаксические ошибки
- Множественные искключения
- Пользовательские исключения
- Юнит-тестирование
4. Итераторы и генераторы
- Итераторы
- Генераторы
- Генераторы-выражения
- Методы Генераторов
- Yield-выражения 4. Итераторы и генераторы
- Итераторы
- Генераторы
- Генераторы-выражения
- Методы Генераторов
5. Последовательности
- Понятие последовательности
- Операции с последовательностями
- Списки
- Кортежи
- Диапазоны (range)
- Строки
- Функции с произвольным количеством позиционных параметров, распаковка позиционных аргументов функций из последовательностей
6. Множества и отображения
- Множества
- Операции с множествами
- Словари (ассоциативные массивы)
- Операции со словарями и другими отображениями
- Представления словарей
7. Модули
- Понятие модулей
- Импортирование модулей
-__name__and '__main__'
- Встроенные модули
- Пакеты - Понятие последовательности
- Операции с последовательностями
- Списки
- Кортежи
- Диапазоны (range)
- Строки
- Функции с произвольным количеством позиционных параметров, распаковка позиционных аргументов функций из последовательностей
6. Множества и отображения
- Множества
- Операции с множествами
- Словари (ассоциативные массивы)
- Операции со словарями и другими отображениями
- Представления словарей
7. Модули
- Понятие модулей
- Импортирование модулей
-__name__and '__main__'
- Встроенные модули
- Pyp и Pip
8. Ввод и вывод
- Файлы
- Открытие, закрытие файлов
- Режимы открытия файлов
- Считывание из файлов и запись в файлы
- Использование конструкции with; менеджеры контекста
- Сохранение и загрузка данных в формате CSV
- Сохранение и загрузка данных в формате JSON
8. Ввод и вывод
- Файлы
- Открытие, закрытие файлов
- Режимы открытия файлов
- Считывание из файлов и запись в файлы
- Использование конструкции with; менеджеры контекста
- Сохранение и загрузка данных в формате CSV
- Сохранение и загрузка данных в формате JSON
- Сериализация с помощью pickle
9. Элементы функционального программирования
- Функции как объекты первого класса (first-class citizens)
- Лямбда-выражения
- Функции высшего порядка, каррирование функций
- Декораторы
- Функции filter, map, reduce
10. Многопоточные вычисления
- Потоки управления
- Класс Thread
- Замки, семафоры
- События, условия
9. Элементы функционального программирования
- Функции как объекты первого класса (first-class citizens)
- Лямбда-выражения
- Функции высшего порядка, каррирование функций
- Декораторы
- Функции filter, map, reduce
10. Многопоточные вычисления
- Потоки управления
- Класс Thread
- Замки, семафоры
- События, условия