Основы программирования в Python: различия между версиями

Материал из MathINFO
Перейти к навигации Перейти к поиску
 
(не показано 12 промежуточных версий этого же участника)
Строка 143: Строка 143:
 
* Сырые ipynb-файлы с занятий:  [https://www.dropbox.com/s/4hz334ozatm9o3f/221.ipynb?dl=0 221], [https://www.dropbox.com/s/ggo872btmojrnbd/222.ipynb?dl=0 222], [https://www.dropbox.com/s/ylue40l52ooubwj/223.ipynb?dl=0 223].
 
* Сырые ipynb-файлы с занятий:  [https://www.dropbox.com/s/4hz334ozatm9o3f/221.ipynb?dl=0 221], [https://www.dropbox.com/s/ggo872btmojrnbd/222.ipynb?dl=0 222], [https://www.dropbox.com/s/ylue40l52ooubwj/223.ipynb?dl=0 223].
 
* Lambda-функции, анонимные функции (читать, ipynb).
 
* Lambda-функции, анонимные функции (читать, ipynb).
* * Практикум 11 ([https://github.com/allatambov/PyPolit2023/blob/main/polit-practice11.ipynb читать], [https://www.dropbox.com/s/rschmfq86ev7gk8/polit-practice11.ipynb?dl=0 ipynb]), решения практикума ([https://github.com/allatambov/PyPolit2023/blob/main/polit-practice11-solutions.ipynb читать], [https://www.dropbox.com/s/haussafhusj4aum/polit-practice11-solutions.ipynb?dl=0 ipynb]).
+
* Практикум 11 ([https://github.com/allatambov/PyPolit2023/blob/main/polit-practice11.ipynb читать], [https://www.dropbox.com/s/rschmfq86ev7gk8/polit-practice11.ipynb?dl=0 ipynb]), решения практикума ([https://github.com/allatambov/PyPolit2023/blob/main/polit-practice11-solutions.ipynb читать], [https://www.dropbox.com/s/haussafhusj4aum/polit-practice11-solutions.ipynb?dl=0 ipynb]).
 +
 
 +
=== Занятие 13 (17 апреля). Повторение: чтение и запись файлов ===
 +
 
 +
* Практикум 12 ([https://github.com/allatambov/PyPolit2023/blob/main/polit-practice12.ipynb читать], [https://www.dropbox.com/s/gkawtf3rwgxy9ma/polit-practice12.ipynb?dl=0 ipynb]), решения практикума ([https://github.com/allatambov/PyPolit2023/blob/main/polit-practice12-solutions.ipynb читать], [https://www.dropbox.com/s/30sc32owzdbbyw2/polit-practice12-solutions.ipynb?dl=0 ipynb]).
 +
 
 +
=== Занятие 14 (24 апреля). Введение в HTML. Знакомство с библиотекой BeautifulSoup ===
 +
 
 +
* Знакомство с HTML ([https://www.dropbox.com/s/yhdffw8qo1rpulo/Intro_HTML.pdf?dl=0 слайды]).
 +
* Вспомогательный практикум по введению в BeautifulSoup: [https://github.com/allatambov/PyPolit2023/blob/main/parse-intro.ipynb читать], [https://www.dropbox.com/s/skppt9ug4memglz/parse-intro.ipynb?dl=0 ipynb].
 +
* Практикум по парсингу HTML с BeautifulSoup ([https://github.com/allatambov/PyPolit2023/blob/main/pypolit-practice-bs01.ipynb читать], [https://www.dropbox.com/s/bkjph1dneiuuq66/pypolit-practice-bs01.ipynb?dl=0 ipynb]), решения ([https://github.com/allatambov/PyPolit2023/blob/main/pypolit-practice-bs01-solutions.ipynb читать], [https://www.dropbox.com/s/d2qc5odryedfihm/pypolit-practice-bs01-solutions.ipynb?dl=0 ipynb]).
 +
 
 +
Дополнительно:
 +
 
 +
* [https://www.w3schools.com/html/default.asp Тьюториал] по HTML от W3schools.
 +
* Сайт [https://codepen.io/ codepen.io] для фронт-энд разработчиков.
 +
 
 +
=== Занятие 15 (22 мая). Продолжение знакомства с библиотекой BeautifulSoup ===
 +
 
 +
* Практикум по парсингу HTML с BeautifulSoup: обновленные решения ([https://github.com/allatambov/PyPolit2023/blob/main/pypolit-practice-bs01-solutions-upd.ipynb читать], [https://www.dropbox.com/s/1ia39uppd88gc4q/pypolit-practice-bs01-solutions-upd.ipynb?dl=0 скачать]).
 +
 
 +
=== Занятие 16 (29 мая). Подключение к API на примере ВКонтакте ===
 +
 
 +
* [https://allatambov.github.io/pypolit/vk-auth.pdf Инструкция] по получению доступа к API.
 +
* Практикум по работе с API ВКонтакте: ([https://github.com/allatambov/PyPolit2023/blob/main/pypolit-practice16.ipynb читать], [https://www.dropbox.com/s/t5ztufcd9h765dp/pypolit-practice16.ipynb?dl=0 скачать]).
  
 
== Домашние задания ==
 
== Домашние задания ==
Строка 162: Строка 186:
 
| [https://nbviewer.org/url/python.math-hse.info/static/assignments_release/pypolit23/pyall-hw04/pyall-hw04.ipynb Домашнее задание 4]|| 27.02 23:59, сдается через систему
 
| [https://nbviewer.org/url/python.math-hse.info/static/assignments_release/pypolit23/pyall-hw04/pyall-hw04.ipynb Домашнее задание 4]|| 27.02 23:59, сдается через систему
 
|-
 
|-
| [https://nbviewer.org/url/python.math-hse.info/static/assignments_release/pypolit23/pypolit-hw05/pypolit-hw05.ipynb Домашнее задание 5]|| 20.03 23:59, сдается через систему, [https://www.dropbox.com/s/xmgzi3a8787uj5x/pesem.txt?dl=0 pesem.txt]
+
| [https://nbviewer.org/url/python.math-hse.info/static/assignments_release/pypolit23/pypolit-hw05/pypolit-hw05.ipynb Домашнее задание 5] [https://www.dropbox.com/s/xmgzi3a8787uj5x/pesem.txt?dl=0 pesem.txt] || 20.03 23:59, сдается через систему,
 
|-
 
|-
 
| [https://nbviewer.org/url/python.math-hse.info/static/assignments_release/pypolit23/pypolit-hw06/pypolit-hw06.ipynb Домашнее задание 6] || 10.04 23:59, сдается через систему
 
| [https://nbviewer.org/url/python.math-hse.info/static/assignments_release/pypolit23/pypolit-hw06/pypolit-hw06.ipynb Домашнее задание 6] || 10.04 23:59, сдается через систему
 
|-
 
|-
| Домашнее задание 7||
+
| Домашнее задание 7: [https://www.dropbox.com/s/u2nw2og9xiokeje/pypolit-hw07-partA.pdf?dl=0 часть A], [https://nbviewer.org/url/python.math-hse.info/static/assignments_release/pypolit23/pypolit-hw07/pypolit-hw07.ipynb часть BC]|| 30.04 23:59, сдается через Google Forms и систему
|-
 
| Домашнее задание 8||  
 
 
|-
 
|-
| Домашнее задание 9||  
+
| [https://nbviewer.org/url/python.math-hse.info/static/assignments_release/pypolit23/pypolit-hw08/pypolit-hw08.ipynb Домашнее задание 8] || 09.06 23:59, сдается через систему
 
|-
 
|-
| Домашнее задание 10||  
+
| [https://nbviewer.org/url/python.math-hse.info/static/assignments_release/pypolit23/pypolit-hw09/pypolit-hw09.ipynb Домашнее задание 9]|| 20.06 23:59, сдается через систему
 
|-
 
|-
 
|}
 
|}

Текущая версия на 03:30, 14 июня 2023

Дорогие студенты!

Это страница обязательного курса «Основы программирования в Python», читаемого на образовательной программе «Политология» 1 курса бакалавриата
в 3-4 модулях 2022-2023 учебного года.

Семинары ведёт: Тамбовцева Алла Андреевна, почта allatambov@gmail.com.

Учебные ассистенты: Жужлев Борис (страница vk), Сташевски Эмиль.

Содержание

Правила игры

  • Формула оценки: Итог = 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.

Дополнительно:

Занятие 02 (23 января). Типы данных в Python. Ввод и вывод.

  • Сырые ipynb-файлы лекции с занятия: 221, 222, 223.
  • Типы данных и преобразование типов. Ввод и вывод в Python (читать, ipynb).
  • Практикум 01 (читать, ipynb), решения практикума (читать, ipynb).

Дополнительно:

Для тех, кто всё это знает:

Занятие 03 (30 января). Форматирование строк. Методы .split() и .join().

Занятие 04 (6 февраля). Списки и цикл for.

Дополнительно:

Занятие 05 (13 февраля). Списки и кортежи. Функции range() и zip().

Занятие 06 (17 февраля). Списки, кортежи, массивы. Методы на строках.

Дополнительно:

Занятие 07 (27 февраля). Чтение и запись txt-файлов. Условные конструкции: введение.

Занятие 08 (6 марта). Условные конструкции и цикл while.

Дополнительно:

Занятие 09 (13 марта). Повторение. Множества.

Дополнительно:

Занятие 10 (20 марта). Словари.

Дополнительно:

Занятие 11 (3 апреля). Функции.

Дополнительно:

Занятие 12 (10 апреля). Lambda-функции. Повторение.

  • Сырые ipynb-файлы с занятий: 221, 222, 223.
  • Lambda-функции, анонимные функции (читать, ipynb).
  • Практикум 11 (читать, ipynb), решения практикума (читать, ipynb).

Занятие 13 (17 апреля). Повторение: чтение и запись файлов

Занятие 14 (24 апреля). Введение в HTML. Знакомство с библиотекой BeautifulSoup

Дополнительно:

Занятие 15 (22 мая). Продолжение знакомства с библиотекой BeautifulSoup

  • Практикум по парсингу HTML с BeautifulSoup: обновленные решения (читать, скачать).

Занятие 16 (29 мая). Подключение к API на примере ВКонтакте

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

  • Решения домашнего задания №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 pesem.txt 20.03 23:59, сдается через систему,
Домашнее задание 6 10.04 23:59, сдается через систему
Домашнее задание 7: часть A, часть BC 30.04 23:59, сдается через Google Forms и систему
Домашнее задание 8 09.06 23:59, сдается через систему
Домашнее задание 9 20.06 23:59, сдается через систему

Подготовка к независимому экзамену

Официальная информация

  • Студенты ОП «Политология» сдают независимый экзамен по программированию базового уровня (сложнее, чем начальный).
  • Экзамен запланирован на 4 модуль, с 15 по 17 мая. Экзамен проходит в LMS, проводится с прокторингом. Во время выполнения экзамена разрешается пользоваться официальной шпаргалкой, доступной по ссылке в LMS. На экзамене не разрешается пользоваться облачными средами для работы типа Google Colab, но разрешается пользоваться стандартными средами для запуска кода Jupyter Notebook, PyCharm, VSCode.
  • Для подготовки рекомендуется использовать материалы курса «Python как иностранный», а также открытый банк заданий и демоверсию экзамена из официальных материалов для подготовки. У разработчиков экзамена есть телеграм-канал, в котором публикуется полезная информация к экзамену, задачи и их разбор.