Общая информация

Преподаватели

План лабораторных работ

  1. Лабораторная работа №1. Выделение ключевых слов с помощью частот

    1. Дедлайн: 29 сентября

  2. Лабораторная работа №2. Исправление опечаток на основе редакционного расстояния

    1. Дедлайн: 20 октября

  3. Лабораторная работа №3. Генерация текста с помощью N-грамм

    1. Дедлайн: 17 ноября

  4. Лабораторная работа №4. Автодополнение с помощью N-грамм и префиксного дерева

    1. Дедлайн: 8 декабря

История занятий

Дата

Тема лекции

Тема практики. Материалы практики.

01.09.2025

Установочная встреча.

Создание форка.

08.09.2025

Краткий обзор преимуществ и недостатков языка.

Запуск, отладка программ на Python. Листинг. Условия Листинг.

15.09.2025

Строки.

Числа. Листинг. Строки. Листинг.

22.09.2025

Основы создания алгоритмического решения.

Строки. Листинг.

29.09.2025

Списки. Кортежи. Множества.

Сдача лабораторной работы №1.

06.10.2025

Словари.

Списки и кортежи. Листинг. Словари. Листинг.

13.10.2025

Функции.

Функции. Листинг.

20.10.2025

Введение в ООП.

Сдача лабораторной работы №2.

01.10.2025

Введение в ООП II.

Классы. Листинг. Проектирование игры. Листинг.

08.11.2025

Инкапсуляция. Наследование.

Инкапсуляция. Листинг.

10.11.2025

Наследование II. Полиморфизм. Протоколы.

Наследование. Листинг.

17.11.2025

Исключения.

Сдача лабораторной работы №3.

24.11.2025

Области видимости.

Полиморфизм. Листинг.

01.11.2025

Функции II.

Исключения. Листинг.

08.12.2025

Принципы SOLID.

Сдача лабораторной работы №4.

15.12.2025

Консультация.

Досдача лабораторных работ.

Более полное содержание пройденных занятий Вы найдёте в Краткий конспект лекций.

Порядок сдачи и оценивания лабораторной работы

  1. Лабораторная работа допускается к очной сдаче.

  2. Студент объяснил работу программы и показал её в действии.

  3. Студент выполнил задание ментора по некоторой модификации кода.

  4. Студент получает оценку:

    1. Соответствующую ожидаемой, если все шаги выше выполнены и ментор удовлетворён ответом студента.

    2. На балл выше ожидаемой, если все шаги выше выполнены и ментор решает поощрить студента за отличный ответ.

    3. Штрафы размером -1 балл могут накапливаться и даются за каждое следующее событие, при условии, что студент допущен к сдаче:

      1. если лабораторная работа сдана на неделю позже срока сдачи.

      2. если студент не выполнил микро-задание в течение семинара.

      3. если студент не смог ответить на все вопросы ментора по своей реализации.

    4. Штрафы размером -2 балла могут накапливаться и даются за каждое следующее событие:

      1. если лабораторная работа сдана на 2 недели позже срока сдачи.

      2. если студент списал лабораторную работу.

      3. если студент не проходил ревью и это сдача на последнем семинаре перед экзаменом.

Note

Студент может улучшить оценку по лабораторной работе, если после основной сдачи выполнит задания следующего уровня сложности относительно того уровня, на котором выполнялась реализация.

Лабораторная работа допускается к очной сдаче, если она:

  1. Представлена в виде пулл реквеста (Pull Request, PR) с правильно составленным названием по шаблону: Laboratory work #<NUMBER>, <SURNAME> <NAME> - <UNIVERSITY GROUP NAME>.

    1. Пример: Laboratory work #1, Kashchikhin Andrey - 21FPL1.

  2. Имеет заполненный файл settings.json с ожидаемой оценкой. Допустимые значения: 4, 6, 8, 10.

  3. Имеет “зелёный” статус - автоматические проверки качества и стиля кода, соответствующие заданной ожидаемой оценке, удовлетворены.

  4. (Опционально) Имеет лейбл done, выставленный ментором. Означает, что ментор посмотрел код студента и удовлетворён качеством кода.

Литература

Базовый уровень

  1. M. Lutz. Learning Python.

  2. Хирьянов Т.Ф. Видеолекции. Практика программирования на Python 3. 2019.

  3. Хирьянов Т.Ф. Видеолекции. Алгоритмы и структуры данных на Python3. 2017.

  4. Официальная документация Python.

Продвинутый уровень

  1. M. Lutz. Programming Python: Powerful Object-Oriented Programming.

  2. J. Burton Browning. Pro Python 3: Features and Tools for Professional Development.

  3. Хирьянов Т.Ф. Видеолекции. Основы программирования и анализа данных на Python. 2022.

Ресурсы

  1. Таблица успеваемости

  2. Подготовка к прохождению курса

  3. running-tests-label

  4. Часто задаваемые вопросы