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

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

О курсе

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

Контакты

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

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

Ассистент Telegram
Калашникова Анастасия @kalassnikovaa
Флоринский Михаил [1]
Морозов Антон @MAntonV

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

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

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

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

Занятие Тема Дата Материалы для самоподготовки к семинарам Дополнительные материалы
1 [Запись] [Ноутбуки] Основные типы и структуры данных. 05.09.23
2 Запись Ноутбук Циклы for и while 12.09.23
3 Запись Ноутбук Итераторы и генераторы. Чтение файлов. Методы работы со строками 19.09.23
4 Запись Ноутбук Множества и словари 26.09.23
5 Запись Ноутбук Введение в numpy и pandas 03.10.23
6 Запись Ноутбук Разведочный анализ данных 10.10.23
7 Запись Ноутбук Визуализация данных
8 Запись Ноутбук Функции, рекурсия. Генераторы. Декораторы
9 Запись Ноутбук Классы и основы ООП
10 Запись Ноутбук Регулярные выражения
11 Запись Ноутбук Парсинг
12 Запись Ноутбук

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

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

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

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

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

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

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

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

Проект

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

Требования:

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

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

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

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

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

Инвайт в Anytask: BCB3V6W

Литература

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