Основы программирования в Python: различия между версиями
Строка 91: | Строка 91: | ||
* Сырые ipynb-файлы лекции с занятия: [https://www.dropbox.com/s/s2rwbo0tisfc0wk/221.ipynb?dl=0 221], [https://www.dropbox.com/s/vt9isy0j9bm8sv9/222.ipynb?dl=0 222], [https://www.dropbox.com/s/nigk64rrwqwhr2x/223.ipynb?dl=0 223]. | * Сырые ipynb-файлы лекции с занятия: [https://www.dropbox.com/s/s2rwbo0tisfc0wk/221.ipynb?dl=0 221], [https://www.dropbox.com/s/vt9isy0j9bm8sv9/222.ipynb?dl=0 222], [https://www.dropbox.com/s/nigk64rrwqwhr2x/223.ipynb?dl=0 223]. | ||
− | * Чтение и запись txt-файлов (читать, ipynb). Проверка условий и конструкция if-else (читать, ipynb). | + | * Чтение и запись txt-файлов (читать, ipynb). Проверка условий и конструкция if-else (читать, ipynb). |
− | + | * Практикум 06 ([https://github.com/allatambov/PyPolit2023/blob/main/polit-practice06.ipynb читать], [https://www.dropbox.com/s/7ek0tq61k8feagh/polit-practice06.ipynb?dl=0 ipynb]), решения (читать, ipynb). Файлы: [https://www.dropbox.com/s/himcx9m1qjtwm9t/intro.txt?dl=0 intro.txt], [https://www.dropbox.com/s/psx0zigb2p2qlze/ducks.txt?dl=0 ducks.txt]. | |
== Домашние задания == | == Домашние задания == |
Версия 01:26, 28 февраля 2023
Дорогие студенты!
Это страница обязательного курса «Основы программирования в Python», читаемого на образовательной программе «Политология» 1 курса бакалавриата
в 3-4 модулях 2022-2023 учебного года.
Семинары ведёт: Тамбовцева Алла Андреевна, почта allatambov@gmail.com.
Учебные ассистенты: Жужлев Борис (страница vk), Сташевски Эмиль.
Содержание
- 1 Правила игры
- 2 Программное обеспечение
- 3 Материалы курса
- 3.1 Занятие 01 (16 января). Знакомство со средой Jupyter Notebook. Вычисления и переменные в Python.
- 3.2 Занятие 02 (23 января). Типы данных в Python. Ввод и вывод.
- 3.3 Занятие 03 (30 января). Форматирование строк. Методы .split() и .join().
- 3.4 Занятие 04 (6 февраля). Списки и цикл for.
- 3.5 Занятие 05 (13 февраля). Списки и кортежи. Функции range() и zip().
- 3.6 Занятие 06 (17 февраля). Списки, кортежи, массивы. Методы на строках.
- 3.7 Занятие 07 (27 февраля). Чтение и запись txt-файлов. Условные конструкции: введение.
- 4 Домашние задания
- 5 Подготовка к независимому экзамену
Правила игры
- Формула оценки: Итог = 0.4 * Домашнее задание + 0.3 * Тест + 0.3 * Экзамен, где Домашнее задание и Тест – неокруглённые средние арифметические за все домашние задания и тесты соответственно, а Экзамен – целочисленная оценка за экзамен. Всего планируется 10 домашних заданий и 3 теста.
- Пояснения по формам контроля можно посмотреть в программе курса.
- При сдаче домашнего задания позже указанного срока предусмотрены штрафы. Опоздание в пределах часа ведёт к штрафу 10% от полученной оценки, в пределах суток – к штрафу 30%, в пределах недели – к штрафу 60%.
Программное обеспечение
Перед занятиями необходимо установить дистрибутив Anaconda (скачать можно здесь), который включает в себя интерпретатор языка Python, библиотеки для обработки, анализа и визуализации данных, а также среду для работы Jupyter Notebook.
Также есть возможность работать в Jupyter Notebook онлайн, используя ресурс Google Colab (для создания и редактирования файлов нужен аккаунт Gmail). Но в долгосрочной перспективе предпочтительнее установить Anaconda.
Материалы курса
Занятие 01 (16 января). Знакомство со средой Jupyter Notebook. Вычисления и переменные в Python.
- Видеозапись занятия, сырые ipynb-файлы с занятия.
- Инструкция по работе с Jupyter Notebook. Знакомство с Jupyter Notebook и Markdown (читать, ipynb).
- Вычисления и переменные в Python (читать, ipynb).
Дополнительно:
- Pythontutor: вычисления.
- Вычисления с заданной точностью с модулем decimal, официальная документация decimal.
- Вычисления с обыкновенными дробями с модулем fractions, официальная документация fractions.
- Символьные вычисления с sympy: часть 1 (sympy-1.ipynb), часть 2 (sympy-2.ipynb), официальная документация sympy.
- Стандарты оформления кода Python: PEP8, проверка соответствия кода стандартам: PEP8 online check.
- Markdown и Jupyter: больше про Markdown, интерактивные виджеты в Jupyter.
Занятие 02 (23 января). Типы данных в Python. Ввод и вывод.
- Сырые ipynb-файлы лекции с занятия: 221, 222, 223.
- Типы данных и преобразование типов. Ввод и вывод в Python (читать, ipynb).
- Практикум 01 (читать, ipynb), решения практикума (читать, ipynb).
Дополнительно:
- Pythontutor: ввод и вывод.
- Работа с f-strings: обзор, документация.
- Исполнение кода внутри строк с функцией eval(): обзор.
Для тех, кто всё это знает:
- Введение в объекты и в классы в Python: лекция, тьюториал.
- Работа с текстами: облака слов (Set up a Basic WordCloud, в text помещаем любую строку с текстом), библиотека pymorphy2 для нормализации слов, пример списка стоп-слов для русского языка.
Занятие 03 (30 января). Форматирование строк. Методы .split() и .join().
- Сырые ipynb-файлы лекции с занятия: 221, 222, 223.
- Форматирование строк. Методы .split() и .join() (читать, ipynb).
- Практикум 02 (читать, ipynb), решения практикума (читать, ipynb).
Занятие 04 (6 февраля). Списки и цикл for.
- Сырые ipynb-файлы лекции с занятия: 221, 222, 223.
- Списки и цикл for (читать, ipynb). Методы на списках (читать, ipynb).
- Практикум 03 (читать, ipynb), решения практикума (читать, ipynb).
Дополнительно:
- Визуализатор кода от pythontutor.com.
- Pythontutor: списки, цикл for.
Занятие 05 (13 февраля). Списки и кортежи. Функции range() и zip().
- Сырые ipynb-файлы лекции с занятия: 221, 222, 223.
- Функция range(), функция zip() и кортежи (читать, ipynb).
- Практикум 04 (читать, ipynb), решения практикума (читать, ipynb).
Занятие 06 (17 февраля). Списки, кортежи, массивы. Методы на строках.
- Сырые ipynb-файлы лекции с занятия: 221, 222, 223.
- Кортежи и массивы (читать, ipynb). Методы на строках (читать, ipynb).
- Практикум 05 (читать, ipynb), решения (читать, ipynb).
- Библиотека pymorphy2 для морфологического разбора и нормализации слов.
Дополнительно:
- Работа с текстами: облака слов, пример списка стоп-слов для русского языка.
Занятие 07 (27 февраля). Чтение и запись txt-файлов. Условные конструкции: введение.
- Сырые ipynb-файлы лекции с занятия: 221, 222, 223.
- Чтение и запись txt-файлов (читать, ipynb). Проверка условий и конструкция if-else (читать, ipynb).
- Практикум 06 (читать, ipynb), решения (читать, ipynb). Файлы: intro.txt, ducks.txt.
Домашние задания
- Решения домашнего задания №1 необходимо загрузить в папку Dropbox по предложенным ссылкам (отдельная ссылка для каждой группы).
- Последующие домашние задания сдаются через систему python.math-info, видео-инструкция по работе с системой.
Домашнее задание | Дедлайн |
---|---|
Домашнее задание 1 | 23.01 12:00, загружать сюда: 221, 222, 223 |
Домашнее задание 2 | 04.02 23:59, сдается через систему |
Домашнее задание 3 | 16.02 23:59, сдается через систему |
Домашнее задание 4 | 27.02 23:59, сдается через систему |
Домашнее задание 5 | |
Домашнее задание 6 | |
Домашнее задание 7 | |
Домашнее задание 8 | |
Домашнее задание 9 | |
Домашнее задание 10 |
Подготовка к независимому экзамену
Официальная информация
- Студенты ОП «Политология» сдают независимый экзамен по программированию базового уровня (сложнее, чем начальный).
- Экзамен запланирован на 4 модуль, точная дата пока неизвестна. Экзамен проходит в LMS, проводится с прокторингом. Во время выполнения экзамена разрешается пользоваться официальной шпаргалкой, доступной по ссылке в LMS. На экзамене не разрешается пользоваться облачными средами для работы типа Google Colab, но разрешается пользоваться стандартными средами для запуска кода Jupyter Notebook, PyCharm, VSCode.
- Для подготовки рекомендуется использовать материалы курса «Python как иностранный», а также открытый банк заданий и демоверсию экзамена из официальных материалов для подготовки. У разработчиков экзамена есть телеграм-канал, в котором публикуется полезная информация к экзамену, задачи и их разбор.
Дополнительные материалы
Здесь будут публиковаться дополнительные материалы и задачи для подготовки к экзамену.