МОВС Основы программирования на Python (ММОВС23, 1-2 модули)

Материал из Wiki - Факультет компьютерных наук
Перейти к: навигация, поиск

О курсе

Занятия проводятся в Zoom новая ссылка по вторникам в 19:40

Онлайн-курсы:

Контакты

Чат курса в TG: https://t.me/+MAwRza1aQ9Q4MzNi

Преподаватель: Пиле Ян Эрнестович (https://www.hse.ru/org/persons/591284001)

Ассистент Telegram
Калашникова Анастасия @kalassnikovaa
Флоринский Михаил @roflinski
Морозов Антон @MAntonV
Зуев Гордей @WhiteShape
Сокур Илья @ilias_ml

Материалы курса

Ссылка на плейлист курса на YouTube: YouTube-playlist

Ссылка на GitHub с материалами курса: GitHub repository

После 4-го занятия возможны перестановки по блокам тем

Занятие Тема Дата Ссылки
1 [Запись] [Ноутбуки] Основные типы и структуры данных. 05.09.23
2 [Запись] [Ноутбуки] Основные типы и структуры данных. Продолжение 12.09.23
3 [Запись] [Ноутбуки] Ветвления, циклы 26.09.23
4 [Запись] [Ноутбук] Функции, рекурсия, генераторы, декораторы. Сложность вычислений 03.10.23 Статья про генераторы на Хабре
5 [Запись] [Ноутбук] Регулярные выражения 10.10.23 Статья про регулярки на Хабре, Курс на Stepik про регулярки
regex101 - сайт для разбора регулярных выражений, Доки библиотеки re, описание работы метода finditer
6 [Запись] [Ноутбуки] Парсинг 17.10.23
7 [Запись] [Ноутбук] Введение в NumPy 19.10.23 (Чт.)
8 [Запись] [Ноутбук] Pandas. Разведочный анализ данных 24.10.23
9 [Запись] [Ноутбук] Визуализация данных 31.10.23
10 [Запись] [Ноутбук] Классы и основы ООП 07.11.23
11 [Запись] [Ноутбук] ООП 2. Многорукие бандиты 14.11.23
12 Запись Ноутбук Анализ текстовой информации 1: Исправление опечаток 21.11.23
13 Запись Ноутбук Анализ текстовой информации 2: Appproximate Nearest Neighbors (ANN) search - Faiss 12.12.23
14 Запись Ноутбук Пайплайн EDA и (возможно) трюки в IPython и Jupyter 12.12.23

Записи консультаций

Формула оценивания

Оценка = 0.3*ОТесты + 0.7*ОДЗ

Распределительное задание

Ноутбук на GitHub. Дедлайн: 08.09.23 (Пт), 23:59 МСК

По результатам мы можем порекомендовать вам не посещать настоящий курс и идти на курсы MLOps. Начало (1-й модуль, Елизавета Гаврилова) и MLOps (2-й модуль, Владислав Гончаренко)

Вторая опция не проходить курс: сдать проект, требования по которым описаны ниже.

Заполненный ноутбук с заданиями распределительного тестирования нужно приложить в Anytask в соответствующий слот.

Проект

Получить оценку за этот курс по альтернативному треку (без ДЗ и тестов) можно путём сдачи проекта.

Требования:

В целом, вас не хочется ограничивать, но предложение преподавателя такое:

  • Парсер;
  •   Разведочный анализ данных/какую-то обработку этих собранных данных;
  •    Потенциальную обработку ошибок (парсер не завелся/запрос вам отправили неправильный);
  •     Неплохо бы фронтенд взаимодействия с пользователем (например, в телеге бота запилить);
  •      И выкладку на сервер, чтоб работало без вашего включенного компа.

Итоговая цель примерно такова, что проект должен отвечать на вопрос: Умеет ли студент на некотором уровне решать задачи с помощью питона.

Если у вас есть альтернативные предложения по проекту - готовы их обсудить.

Домашние задания

Инвайт в Anytask: BCB3V6W

  1. ДЗ-1: Типы данных, выдано 14.09.23, дедлайн: 24.09.23 23:59 (МСК)
  2. ДЗ-2: Функции, выдано 04.10.23, дедлайн: 17.10.23 23:59 (МСК)
  3. ДЗ-3: Парсинг, регулярки, немного NumPy, выдано 20.10.23, ЖЁСТКИЙ Дедлайн: 01.11.23 23:59 (МСК)
  4. ДЗ-4: pandas, визуальный анализ, выдано 08.11.23, дедлайн: 21.11.23 23:59 (МСК)
  5. ООП

Тесты

1) "Структуры данных, функции", Дедлайн: 10.10.23 (Вт.) 23:59 МСК
2) "Регулярные выражения, numpy", Дедлайн: 25.10.23 (Ср.) 23:59 МСК
3) "NumPy, Pandas, визуализация", Дедлайн: 17.11.23 (Пт.) 23:59 МСК
4) "ООП"
5)

Литература

  • Лутц Марк, "Программирование на Python"
  • Dan Bader, "Python Tricks: The Book"
  • Гарри Персиваль, "Python. Разработка на основе тестирования"
  • Micha Gorelick & Ian Ozsvald "High Performance Python"