Логотип МФТИ — Московский физико-технический институт
Вернуться к программе курса

Информация о содержании обучения

Модуль 1. Базовый синтаксис, условия и циклы в прикладных задачах

Основные темы

  • Среда Python, первая прикладная программа и ответственное использование ИТ: Python IDE, JupyterLab, интерпретатор, виртуальная среда, консольный ввод-вывод, PEP 8, кибербезопасность.
  • Типы данных, расчёты и форматирование: int, float, str, bool, преобразование типов, прикладные расчёты, форматированный вывод.
  • Условия и проверка данных: if, elif, else, логические выражения, проверка корректности данных.
  • Циклы, серии измерений и функции расчёта: for, while, счётчики, накопители, функции.
  • Вложенные циклы, break, continue и обработка ошибок: вложенные циклы, управление циклом, особые случаи.
  • ИИ-инструменты для проверки и улучшения решений: ИИ-инструменты, проверка ИИ-сгенерированного кода, тесты, кибербезопасность.

Примеры практических заданий

  • написать прикладной расчёт с вводом данных и точным форматом результата;
  • проверить корректность входных данных через условия;
  • обработать серию измерений циклом и оформить повторяющийся расчёт функцией.

Модуль 2. Строки, коллекции и прикладные данные

Основные темы

  • Строки, маркировки и регулярные выражения: методы строк, re, проверка маркировок и форматов.
  • Списки, кортежи и таблицы: списки, кортежи, табличные записи, индексы, срезы.
  • Файлы и CSV: чтение и запись файлов, CSV-подобные данные, контекстный менеджер.
  • Множества и словари: множества, словари, частоты, уникальные элементы.
  • collections для прикладных данных: Counter, defaultdict, namedtuple, deque.
  • Прикладные модули и тестирование данных: math, random, datetime, pathlib, тесты и проверка.

Примеры практических заданий

  • проверить строковую маркировку по шаблону и очистить данные;
  • прочитать CSV-подобный набор записей и посчитать показатель;
  • использовать Counter или словарь для анализа повторов.

Модуль 3. Алгоритмы обработки данных

Основные темы

  • Поиск и фильтрация записей: линейный поиск, фильтры, условия отбора.
  • Сортировка и группировка: сортировка, ключи сортировки, группировка записей.
  • Агрегаты и префиксные суммы: суммы, средние значения, накопленные показатели.
  • Жадные идеи и простая оптимизация: выбор лучшего действия, локальные критерии.
  • Рекурсия, sys, functools: рекурсия, глубина вызовов, кеширование.
  • Мини-кейс обработки данных: чтение набора записей, расчёт показателей, отчёт.

Примеры практических заданий

  • найти записи по условию и отсортировать их по нескольким полям;
  • рассчитать агрегаты и накопленные показатели по набору данных;
  • собрать мини-отчёт по прикладному набору записей.

Модуль 4. Базовое ООП и проектная разработка

Основные темы

  • Классы и объекты: class, объект, атрибуты, __init__, методы.
  • Инкапсуляция и проверка состояния: методы проверки, свойства, ограничения состояния.
  • Наследование и полиморфизм: базовый класс, наследник, переопределение метода.
  • Модули, пакеты, dataclass и исключения: import, dataclass, структура проекта, обработка ошибок.
  • Проектная разработка, README и тест-план: архитектура мини-проекта, документация, тестовые данные.
  • Итоговый ООП-мини-проект: работающий продукт, демонстрация, защита.

Примеры практических заданий

  • описать предметную область через класс и методы проверки состояния;
  • вынести код проекта в модули и обработать исключения;
  • подготовить ООП-мини-проект, README, тест-план и демонстрацию.

Тематика итоговых и комплексных работ

Проектная линия курса: Итоговый ООП-мини-проект. Обучающийся выбирает один из вариантов и готовит работающий программный продукт с README, тест-планом, демонстрационными данными и защитой.

  • Учёт заявок
  • Мини-CRM учебной группы
  • Журнал сервисных работ
  • Складской учёт
  • Планировщик смен
  • Аналитик заявок
  • Каталог оборудования
Назад