Спецкурс

«Введение в Python и обработку данных»

Информация о курсе

Спецкурс кафедры Теоретической информатики мехмата МГУ.

На курсе планируется освоение студентами основ языка Python (синтаксис, структуры данных, работа с файловой системой и т.д.) и овладение навыками для решения стандартных задач.

Время: по субботам, 16:45 — 18:20

Место: 2 учебный корпус МГУ, ауд. П-13: зайти через вход, который ближе к ГЗ, подняться по лестнице — аудитория будет по правую руку

Первая лекция: 2 марта 2019

Руководитель курса: Адрианов Николай, к.ф.-м.н.

Читает курс: Бекбулатов Рамзан

Чат курса: t.me/mm_python (зеркало: tele.click/mm_python) — помощь и актуальные новости

Регистрация на курс: goo.gl/forms/2ELiuN0iNp2nszLS2

Сдача спецкурса для других факультетов: нужно будет брать специальную ведомость в своей учебной части. Курс может идти в диплом как «спецкурс по выбору студента» или как «курс сверх плана».

Занятия

Лекция 1. Основы основ

Темы. Организационные моменты, история Python, первый взгляд на Python: слайды

Лекция 2. Работа с ОС

Темы. Повторение основ, работа со строками, ввод с клавиатуры, чтение и запись файлов: слайды

Лекция 3. Контейнеры

К этой лекции необходимо установить Jupyter Notebook (подробнее). Первые две лекции, собранные вместе: PythonCourse_First.ipynb, статичное превью

Темы. Работа с Jupyter Notebook, модель данных в Python, контейнеры данных: PythonCourse_Lecture_3.ipynb, статичное превью

Лекция 4.

Лекция 5. Визуализация данных

Темы. Визуализация данных в Python, работа с библиотекой matplotlib: PythonCourse_Lecture_5.ipynb, статичное превью, задачи с лекции

Лекция 6. Контейнеры и функции

Темы. словари, множества, модуль collections, особенности работы с функциями: PythonCourse_Lecture_6.ipynb, статичное превью

Лекция 7. Функциональное программирование в Python

Темы. map, filter и прочие, модуль functools, декораторы, генераторы: PythonCourse_Lecture_7.ipynb, статичное превью

Лекция 8. Объектно-ориентированное программирование в Python

Темы. классы, наследование, обработка ошибок: PythonCourse_Lecture_8.ipynb, статичное превью

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

Каждое задание оценивается в звёздочках. К концу курса будет определено количество звёздочек для зачёта и автомата. Задачи пока не имеют дедлайнов, но лучше сдавать раньше и идти в ногу с курсом.

Форма сдачи задания: код решения нужно заливать в свой репозиторий PythonCourse (см. ДЗ №1) с названием hw_номер.py, к примеру, hw_B1.py.

Домашнее задание №1

Домашнее задание №2

Опциональная часть

Домашнее задание №3

Опциональная часть

Домашнее задание №4

Домашнее задание №5

Домашнее задание №6

Домашнее задание №7

Домашнее задание №8

Перед занятиями

Установить интерпретатор Python

Linux

Выполнить команду в Терминале:

sudo apt-get install python3 python3-pip idle3

Windows & macOS

  1. Скачать установщик с сайта: Python 3.7.2

  2. Выбрать подробную установку, выбрать все галочки и установить в папку без пробелов и кириллицы в пути

Установить Jupyter

Про установку: jupyter.readthedocs.io/en/latest/install.html

Другими словами есть два варианта (оба подходят на Windows, Linux и macOS):

  1. Установить Anaconda3 (это Python 3 с множеством пакетов для работы с данными): anaconda.com/distribution/#download-section
  2. Установить Jupyter через консоль: pip3 install -U jupyter (на Windows ищите cmd.exe в поиске в меню Пуск и перейти в папку с Python)

Про запуск: jupyter.readthedocs.io/en/latest/running.html

На Windows и macOS ноутбуки возможно будут открываться просто двойным нажатием, а на Linux нужно будет открывать через консоль jupyter notebook PythonCourse_First.ipynb. Также может записываться jupyter-notebook через дефис.