Программирование для всех (основы работы с Python): различия между версиями
Строка 115: | Строка 115: | ||
| Домашнее задание 4 || 17.10 23:59 || [https://nbviewer.org/url/python.math-hse.info/static/assignments_release/pyall2022/pyall-hw04/pyall-hw04.ipynb ссылка] | | Домашнее задание 4 || 17.10 23:59 || [https://nbviewer.org/url/python.math-hse.info/static/assignments_release/pyall2022/pyall-hw04/pyall-hw04.ipynb ссылка] | ||
|- | |- | ||
− | | Домашнее задание 5 || | + | | [https://github.com/allatambov/PyMs2022/blob/main/pyall-hw05.ipynb Домашнее задание 5] || 24.10 23:59 || [https://www.dropbox.com/s/lp91afwhgt61e4l/pyall-hw05.ipynb?dl=0 ipynb], сдавать [https://www.dropbox.com/request/SjApy84xQ79RmYd0Y5vL сюда] |
|} | |} |
Текущая версия на 01:51, 18 октября 2022
Дорогие студенты!
Это страница курса по выбору «Программирование для всех (основы работы с Python)», читаемого на программе «Прикладная политология» 1 курса магистратуры в 1 модуле 2022-2023 учебного года.
Семинары ведёт: Тамбовцева Алла Андреевна.
Содержание
- 1 Правила игры
- 2 Программное обеспечение
- 3 Материалы занятий
- 3.1 Неделя 1. Введение в Python (12.09)
- 3.2 Неделя 2. Списки и массивы в Python (19.09)
- 3.3 Неделя 3. Условные конструкции, циклы, функции (26.09)
- 3.4 Неделя 4. Словари, файлы JSON, введение в API (03.10)
- 3.5 Неделя 5. Датафреймы pandas, работа с API ВКонтакте (10.10)
- 3.6 Неделя 6. Парсинг HTML с BeautifulSoup (17.10)
- 4 Домашние задания
Правила игры
- Формула оценки: Итог = 0.4 * Домашние задания + 0.2 * Тест + 0.4 * Экзамен.
- План курса по неделям и пояснения по формам контроля можно посмотреть здесь.
Программное обеспечение
Перед занятиями необходимо установить дистрибутив Anaconda (скачать можно здесь), который включает в себя интерпретатор языка Python, библиотеки для обработки, анализа и визуализации данных, а также среду для работы Jupyter Notebook.
Также есть возможность работать в Jupyter Notebook онлайн, используя ресурс Google Colab (для создания и редактирования файлов нужен аккаунт Gmail). Но в долгосрочной перспективе предпочтительнее установить Anaconda.
Материалы занятий
Неделя 1. Введение в Python (12.09)
- Видеозапись занятия, сырой ipynb-файл с занятия.
- Инструкция по работе с Jupyter Notebook. Знакомство с Jupyter Notebook и Markdown (читать, ipynb).
- Вычисления и переменные в Python (читать, ipynb). Типы данных, ввод и вывод, форматирование строк (читать, ipynb).
- Практикум 1: задания (читать, скачать), решения (читать, скачать).
Дополнительно:
- Pythontutor: вычисления, ввод и вывод.
- Markdown и Jupyter: больше про Markdown, интерактивные виджеты в Jupyter.
- Стандарты оформления кода Python: PEP8.
- LaTeX: ShareLaTeX для желающих, документация на английском, материалы других курсов по LaTeX.
Неделя 2. Списки и массивы в Python (19.09)
- Видеозапись занятия, сырой ipynb-файл с занятия.
- Списки и цикл for (читать, ipynb). Методы на списках (читать, ipynb).
- Методы на строках (читать, ipynb).
- Обзор структур данных: кортежи и массивы (читать, ipynb).
- Практикум 2: задания (читать, скачать), решения (читать, скачать).
Дополнительно:
- Pythontutor: визуализатор кода.
- Pythontutor: цикл for, списки, строки.
- Библиотеки для продвинутой обработки текста: pymorphy2 (морфологический анализатор), pymystem3 (предобработка текста), nltk (много модулей для разных языков).
Неделя 3. Условные конструкции, циклы, функции (26.09)
- Видеозапись занятия, сырой ipynb-файл с занятия.
- Проверка условий (читать, скачать). Условные конструкции (читать, скачать).
- Цикл while (читать, скачать).
- Подробная лекция по функциям (И.В.Щуров).
- Практикум 3: задания (читать, скачать), решения (читать, скачать).
Дополнительно:
- Pythontutor: условия, while, функции и рекурсия.
- Конструкция try-except для ловли ошибок (статья).
- Операции continue и pass и циклах (статья).
Неделя 4. Словари, файлы JSON, введение в API (03.10)
- Видеозапись занятия, сырой ipynb с занятия.
- Полезные конструкции: списковые включения и lambda-функции.
- Словари и методы на словарях (читать, скачать).
- Словари и формат JSON (читать, скачать), файл data-6114-2018-12-10.json.
- Практикум 4: задания (читать, скачать), решения (читать, скачать).
- Инструкция по получению доступа к API ВКонтакте.
Дополнительно:
Неделя 5. Датафреймы pandas, работа с API ВКонтакте (10.10)
- Видеозапись занятия, сырой ipynb с занятия.
- Знакомство с датафреймами pandas (читать, скачать), файл Salaries.csv, загрузить данные можно также по ссылке.
- Инструкция по получению доступа к API ВКонтакте, документация API ВКонтакте.
- Практикум 5 по API: задания (читать, скачать), решения (читать, скачать), видео-разбор.
Дополнительно:
- Массивы Numpy, последовательности pandas Series и датафреймы pandas (конспект).
- Материалы курса «Основы анализа данных в Python».
- Материалы курса И.В.Щурова «Наука о данных».
Неделя 6. Парсинг HTML с BeautifulSoup (17.10)
- Видеозапись занятия, сырой ipynb с занятия.
- HTML как язык разметки (слайды).
- Парсинг HTML с BeautifulSoup (читать, скачать).
Дополнительно:
- Документация BeautifulSoup.
- Что дальше: работа с текстами и облака слов (читать), облака слов с wordcloud, список стоп-слов для русского языка.
Домашние задания
Сдаются через систему с автоматическими тестами. Для сдачи задания необходимо зарегистрироваться в системе, зайти в нее, скачать ipynb-файл, вписать в него решения, сохранить изменения и загрузить обновленный файл в систему.
Важно! Если скачать файл со страницы курса по ссылке ниже или создать новый файл и просто скопировать в него условия и решения, система не сможет за каждый пройденный тест засчитать баллы, нужен особый формат ячеек, который используется в ipynb-файле с домашним заданием в системе (да, внешне ячейки такого формата не отличаются от обычных).
Домашнее задание | Дедлайн | Условия |
---|---|---|
Домашнее задание 1 | 20.09 23:59 | ссылка |
Домашнее задание 2 | 29.09 23:59 | ссылка |
Домашнее задание 3 | 06.10 23:59 | ссылка |
Домашнее задание 4 | 17.10 23:59 | ссылка |
Домашнее задание 5 | 24.10 23:59 | ipynb, сдавать сюда |