Основы программирования на Python весна 2019 матфак — различия между версиями
(→Семинары) |
(→Семинары) |
||
Строка 22: | Строка 22: | ||
{| class="wikitable" | {| class="wikitable" | ||
|- | |- | ||
− | ! Группа !! Преподаватель !! Учебный ассистент !! Расписание | + | ! Группа !! Преподаватель !! Учебный ассистент !! Расписание |
|- | |- | ||
− | | 1 || Андрей Кудинов || Мовсес Элбакян || TBA, ауд. 318 | + | | 1 || Андрей Кудинов || Мовсес Элбакян || TBA, ауд. 318 |
|- | |- | ||
− | | 2 || Дмитрий Контуров || [https://t-do.ru/svdcvt Соня Дымченко] || TBA, ауд. 318 | + | | 2 || Дмитрий Контуров || [https://t-do.ru/svdcvt Соня Дымченко] || TBA, ауд. 318 |
|- | |- | ||
|} | |} |
Версия 17:49, 12 января 2019
Содержание
О курсе
Курс читается для студентов факультета математики ВШЭ в 3-4 модулях.
Лектор: Иванникова Вероника
Лекции проходят по понедельникам, первой парой.
Полезные ссылки
Семинары
Группа | Преподаватель | Учебный ассистент | Расписание |
---|---|---|---|
1 | Андрей Кудинов | Мовсес Элбакян | TBA, ауд. 318 |
2 | Дмитрий Контуров | Соня Дымченко | TBA, ауд. 318 |
Система оценок
Формула оценки
Результирующая оценка по дисциплине рассчитывается по формуле:
Oитог = 0.8 * Oнакопл + 0.2 * Oэкз
Накопленная оценка рассчитывается как сумма баллов за все практические задания, переведённая в шкалу от 0 до 10.
Подробнее |
Правила вычисления оценокОценка за практику вычисляется как сумма баллов по всем семинарским работам, переведенная в 10 бальную шкалу. Оценка за домашнюю работу — как сумма баллов по всем домашним заданиям, переведенная в 10 бальную шкалу. Количество баллов за разные задания может различаться в зависимости от их сложности. Все промежуточные оценки (за домашние, практику и экзамен) могут быть не целыми. Накопленная и итоговая оценки округляются математически. Правила сдачи заданийДедлайны по всем домашним заданиям являются жёсткими, то есть после срока работы не принимаются. (поправить!) Домашнее задание выполняется самостоятельно. Часть заданий будет проверяться автоматически, часть - вручную. При попытке сдать хотя бы частично списанный код (текст), или код (текст), полученный в результате совместного решения задач, вся работа будет оценена на 0 баллов. При обнаружении плагиата оценки за домашнее задание или практику обнуляются всем задействованным в списывании студентам, а также подаётся докладная записка в деканат. |
Лекции
Лекция 1 (XX.01). Введение. Обзор возможностей языка.
Философия Python, классы решаемых задач. Интерпретация программы на Python. stdin/stdout/stderr. Память, процессор. Использование библиотек. Как сдавать практические задания. Как установить Python. Анаконда. Jupyter. Базовая интроспекция в интерпретаторе. Как работать в PyCharm.
Лекция 2-3 (XX.01). Структуры данных.
Структуры данных и коллекции Python, сложность вычислений по времени и памяти. Сравнение коллекций. Асимптотика. O-символика. Структуры данных numpy, pandas Однопроходный алгоритм. Генератор списка, словаря, множества. Бинарный поиск и его сложность. Сортировки. Оценка сложности. Хеш-таблицы. Стек, очередь, правильная скобочная последовательность. Бинарный поиск.
Лекция 4 (ХХ.02). Строки, кодировки, Unicode.
Представление строк. Конкатенация. Быстрый поиск подстрок. Длина строки. Кодировки. Работа с файлами.
Лекция 5 (ХХ.02). Функции.
Входные и выходные параметры. Позиционные и именованные аргументы. Лямбда-функции. Декораторы. Модуль functools
Лекция 6-7 (). ООП. Цели и задачи ООП. Классы, атрибуты, методы. Объектная модель Python. Паттерны проектирования
Лекция 8 (). Обработка ошибок. Исключения. Обработка ошибок. Менеджеры контекста.
Лекция 9 (). Дизайн приложений и библиотек. Промышленное программирование.
Распространение кода на Python: wheel, egg. Пакетные менеджеры. Дизайн программы. Стиль кода. Документация и тестирование
Лекция 10 (). Регулярные выражения.
Лекция 11 (). Стандартная библиотека языка Python.
Лекция 12-14 (). Анализ данных на Python.
Mathplotlib, Numpy, Pandas, Scapy. Описательные статистики. Гистограммы. Ящики с усами. Ядерные оценки плотности.
Лекция 15-16 (). Web-технологии.
HTTP, клиент-сервер, REST. requests, telegram-боты
Лекция 17 (). Итераторы, последовательности, генераторы.
Лекция 18 (). Обзор всего пройденного на курсе.
Семинары
Семинар 1
Note! Очень желательно принести с собой ноутбук, потому что сдавать в систему задачки с компьютеров из дисплейного класса нельзя.
1. Общие организационные моменты
2. Как поставить python и настроить окружение
3. Базовый рассказ про git, ssh (необходимо для сдачи заданий)
4. Знакомство с чудо-системой приёма домашек.
Домашние задания
Новости курса
Полезные материалы
Основная литература
- Н.А.Ворожцов, А.В.Винокуров, 2008. Практика и теория программирования. Физматкнига
- Документация языка Python https://docs.python.org/3/
- Б.У. Керниган, Р. Пайк , 2017. Практика программирования. Вильямс
- Д.Бизли, 2014. Python. Подробный справочник. Символ-плюс
Полезные ссылки
- [ ? ]
- [ ? ]