В рамках предмета "Программирование для лингвистов" в НИУ ВШЭ - Нижний Новгород.
Преподаватели:
- Демидовский Александр Владимирович - лектор
- Кащихин Андрей Николаевич - преподаватель практики
- Ураев Дмитрий Юрьевич - преподаватель практики
- Кузнецова Валерия Андреевна - преподаватель практики
План лабораторных работ:
- Детектирование языка текста на основе доли пересечения наиболее частотных слов
- Дедлайн: 1 октября
- Детектирование языка текста на основе расчёта расстояния между векторными представлениями текстов
- Дедлайн: 22 октября
- Детектирование языка текста на основе модели N-грамм
- Дедлайн: 26 ноября
- Генерация текста на основе модели N-грамм
- Дедлайн: 17 декабря
Дата | Тема лекции | Материалы практики |
---|---|---|
03.09.2021 | Знакомство. | Как Python запускает программы? Листинг кода |
10.09.2021 | Язык программирования Python. Историческая справка. Преимущества и недостатки языка. Виртуальная машина. | Что такое git? Инструкции по настройке |
17.09.2021 | Типы данных. Числа. Введение в строки: строка - последовательность. | Числа. Срезы. Листинг кода |
24.09.2021 | Строки как последовательности, штурм задачи про поиск вхождений строки | Строки. Листинг кода |
01.10.2021 | Форматирование строк. Списки как последовательности. | Сдача лабораторной работы №1. |
08.10.2021 | Словари - изменяемые неупорядоченные отображения. | Списки. Листинг кода |
15.10.2021 | Функции - способ организации и переиспользования кода. | Словари. Листинг кода |
29.10.2021 | Области видимости: локальная, объемлющая, глобальная и встроенная. | Сдача лабораторной работы №2. |
12.11.2021 | Введение в ООП: общая мотивация, классы, метод __init__ . |
Практика создания классов. Листинг кода |
19.11.2021 | Инкапсуляция, метод __str__ . |
Работа с классами и инкапсуляция атрибутов. Листинг кода |
26.11.2021 | Наследование, особенности наследования атрибутов и методов. | Сдача лабораторной работы №3. |
03.12.2021 | Инкапсуляция, наследование атрибутов через метод super(). | Работа с классами, практика создания классов родителей и наследников. Листинг кода |
10.12.2021 | Полиморфизм: мотивация, концепция, реализация. | Работа с классами, практика создание полиморфных классов. Листинг кода |
17.12.2021 | Открытая консультация по пройденным темам. | Сдача лабораторной работы №3. |
24.12.2021 | Экзамен. | Сдача просроченных лабораторных работ. |
- Mark Lutz. Learning Python.
- Хирьянов Тимофей Фёдорович. Видеолекции. Практика программирования на Python 3.
- Хирьянов Тимофей Фёдорович. Видеолекции. Алгоритмы и структуры данных на Python 3.
- Official Python 3 documentation.
- Mark Lutz. Programming Python: Powerful Object-Oriented Programming
- J. Burton Browning. Pro Python 3: Features and Tools for Professional Development.
Порядок сдачи:
- лабораторная работа допускается к очной сдаче.
- студент объяснил работу программы и показал её в действии.
- студент выполнил мини-задание ментора по некоторой модификации кода.
- студент получает оценку:
- соответствующую ожидаемой, если все шаги выше выполнены и ментор удовлетворён ответом студента
- на балл выше ожидаемой, если все шаги выше выполнены и ментор решает поощрить студента за отличный ответ
- на балл ниже ожидаемой, если лабораторная работа сдаётся на неделю позже срока сдачи и выполнены критерии в 4.1
- на два балла ниже ожидаемой, если лабораторная работа сдаётся на две недели и позже от срока сдачи и выполнены критерии в 4.1
Замечание: студент может улучшить оценку по лабораторной работе, если после основной сдачи выполнит задания следующего уровня сложности относительно того уровня, на котором выполнялась реализация.
Лабораторная работа допускается к очной сдаче, если выполнены все пункты ниже:
- представлена в виде пулл реквеста (Pull Request, PR) с правильно составленным названием по шаблону:
Laboratory work #<NUMBER>, <SURNAME> <NAME> - <UNIVERSITY GROUP NAME>
. Пример:Laboratory work #1, Kuznetsova Valeriya - 20FPL1
. - имеет заполненный файл
target_score.txt
с ожидаемой оценкой. Допустимые значения: 4, 6, 8, 10. - имеет "зелёный" статус - автоматические проверки качества и стиля кода, соответствующие заданной ожидаемой оценке, удовлетворены.
- имеет лейбл
done
, выставленный ментором. Означает, что ментор посмотрел код студента и удовлетворён качеством кода.
Для запуска тестов выполните следующую команду в папке с лабораторной работой:
python -m unittest discover -p "*_test.py" -s .
- Создаем
upstream
таргет в репозитории:
git remote add upstream https://github.com/fipl-hse/2021-2-level-labs
- Получаем данные об изменениях в удаленном репозитории:
git fetch upstream
- Обновляем свой репозиторий с изменениями из удаленного репозитория:
git merge upstream/master