Основы программирования на Python весна 2019 матфак — различия между версиями

Материал из Wiki - Факультет компьютерных наук
Перейти к: навигация, поиск
Строка 8: Строка 8:
 
'''Лектор:''' Иванникова Вероника
 
'''Лектор:''' Иванникова Вероника
  
Лекции проходят по TBA.
+
Лекции проходят по понедельникам, первой парой.
  
  
Строка 15: Строка 15:
 
* [tba Форма]
 
* [tba Форма]
 
* [https://t.me/joinchat/CDE3klfPVaA00iAaLrA25Q Чат курса в телеграме]
 
* [https://t.me/joinchat/CDE3klfPVaA00iAaLrA25Q Чат курса в телеграме]
* [tba Репозиторий с материалами на GitHub]
+
* [tba Репозиторий курса с задачкам]
* [tba Курс на Anytask]
+
 
* [https://www.hse.ru/ma/pmath/courses/221310207.html Карточка курса и программа]
 
* [https://www.hse.ru/ma/pmath/courses/221310207.html Карточка курса и программа]
  
Строка 37: Строка 36:
 
'''O<sub>итог</sub> = 0.8 * O<sub>накопл</sub> + 0.2 * O<sub>экз</sub>'''
 
'''O<sub>итог</sub> = 0.8 * O<sub>накопл</sub> + 0.2 * O<sub>экз</sub>'''
  
Накопленная оценка рассчитывается по формуле:
+
Накопленная оценка рассчитывается как сумма баллов за все практические задания, переведённая в шкалу от 0 до 10.
 
+
'''O<sub>накопл</sub> = 0.7? * O<sub>дз</sub> + 0.3? * O<sub>прак</sub>'''
+
  
 
{| role="presentation" class="wikitable mw-collapsible mw-collapsed"
 
{| role="presentation" class="wikitable mw-collapsible mw-collapsed"
Строка 56: Строка 53:
 
Домашнее задание выполняется самостоятельно. Часть заданий будет проверяться автоматически, часть - вручную. При попытке сдать хотя бы частично списанный код (текст), или код (текст), полученный в результате совместного решения задач, вся работа будет оценена на 0 баллов. При обнаружении плагиата оценки за домашнее задание или практику обнуляются всем задействованным в списывании студентам, а также подаётся докладная записка в деканат.  
 
Домашнее задание выполняется самостоятельно. Часть заданий будет проверяться автоматически, часть - вручную. При попытке сдать хотя бы частично списанный код (текст), или код (текст), полученный в результате совместного решения задач, вся работа будет оценена на 0 баллов. При обнаружении плагиата оценки за домашнее задание или практику обнуляются всем задействованным в списывании студентам, а также подаётся докладная записка в деканат.  
  
При наличии ''уважительной причины'' пропущенные практические можно написать позднее, а дедлайн по домашнему заданию может быть перенесён.
 
 
|}
 
|}
  

Версия 09:25, 12 января 2019

О курсе

borderless


Курс читается для студентов факультета математики ВШЭ в 3-4 модулях.

Лектор: Иванникова Вероника

Лекции проходят по понедельникам, первой парой.


Полезные ссылки

Семинары

Группа Преподаватель Учебный ассистент Расписание Инвайт в Anytask
1 Андрей Кудинов Мовсес Элбакян TBA, ауд. 318 TBA
2 Дмитрий Контуров Соня Дымченко TBA, ауд. 318 TBA

Система оценок

Формула оценки

Результирующая оценка по дисциплине рассчитывается по формуле:

Oитог = 0.8 * Oнакопл + 0.2 * Oэкз

Накопленная оценка рассчитывается как сумма баллов за все практические задания, переведённая в шкалу от 0 до 10.

Лекции

Лекция 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. [Ссылка]

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

Новости курса

Полезные материалы

Основная литература

  1. Н.А.Ворожцов, А.В.Винокуров, 2008. Практика и теория программирования. Физматкнига
  2. Документация языка Python https://docs.python.org/3/
  3. Б.У. Керниган, Р. Пайк , 2017. Практика программирования. Вильямс
  4. Д.Бизли, 2014. Python. Подробный справочник. Символ-плюс

Полезные ссылки

  1. [ ? ]
  2. [ ? ]