Учебная программа: программирование Python
Цель курса:
Научится программировать на языке Python, изучить возможности и средства этого языка.
Данный курс будет очень полезен всем, кто планирует в дальнейшем профессионально заниматься созданием научных, офисных, сетевых и других приложений.
Описание курса:
Вы научитесь программировать на популярном среди профессиональных программистов языке Python. Курс также будет полезен тем, кто обладает знаниями в объёме программы, но хочет их систематизировать.
Содержание курса:
- Введение в программирование на языке Python
Основные принципы работы интерпретатора Python. Установка и тестирование интерпретатора Python. Подготовка и применение инструментов в среде программирования. Различные реализации интерпретатора Python. Синтаксис и семантика языка. Структура программы.Основные алгоритмические конструкции.
- Базовые структуры данных
Встроенные типы данных: числа, строки, булевы комплексные , none. Переменные и динамическая типизация. Преобразование типов. Структуры данных: списки, кортежи, словари, множества. Цикл по итератору. Связь списков, подмножество списков.
- Основные операторы
Условный оператор if. Цикл for. Цикл while. и другие.
- Функции
Определение и документирование функций. Аргументы функций, передача аргументов, формальные и фактические параметры. Возвращаемые значение функций. Вызов функции. Встроенные функции. Лямбда-функция. Композиция функций. Рекурсия и рекурсивные функции. Вложенные определения функций.
- Модули и пакеты
Понятие модуля, когда применяется. Способы импортирования кода. Пакеты: способы создания и использования.
- Пространства имен и области видимости
Области видимости переменных. Пространства имен модулей.
- Объектно-ориентированное программирование(ОПП)
Принципы ООП. Важные понятия ОПП — класс, конструктор, атрибут, метод, объект класса..Методы и поля класса. Конструкторы класса. Интерфейсы и абстрактные классы. Отношения между классами. Полиморфизм, перегрузка методов.
- Работа с файлами
Работа с файлами. Оператор with. Форматирование строк. Форматированный вывод на консоль. Форматированный вывод в файл.
- Исключения
Понятие, виды стандартных ошибок.. Обработка исключений. Создание исключений, параметры.
- Инструменты функционального программирования
Отличие функционального стиля от императивного. Списковые, словарные сборки. Генерация функций на лету. Итераторы. Генераторы. Декораторы.
- Многопоточное программирование
Модель параллельных вычислений. Потоки. Средства создания потоков в Python. Синхронизация работы потоков. Блокировки и семафоры. Очереди. Взаимные блокировки.Процессный параллелизм
- Стандартные библиотеки Python
Библиотеки для работы с данными. Библиотеки для работы с ресурсами.