Python для сбора и анализа данных: различия между версиями

Материал из MathINFO
Перейти к навигации Перейти к поиску
 
(не показана 41 промежуточная версия этого же участника)
Строка 16: Строка 16:
 
== Программное обеспечение ==
 
== Программное обеспечение ==
  
Перед занятиями необходимо установить дистрибутив '''Anaconda''' (скачать можно [https://www.anaconda.com/download здесь]), который включает в себя интерпретатор языка Python, библиотеки для обработки, анализа и визуализации данных, а также среду для работы '''Jupyter Notebook'''. Также есть возможность работать в Jupyter Notebook онлайн, используя ресурс [https://colab.research.google.com/ Google Colab] (для создания и редактирования файлов нужен аккаунт Gmail). Подробности по установке и работе – см. ниже в неделе 0.
+
Перед занятиями необходимо установить дистрибутив '''Anaconda''' (скачать можно [https://www.anaconda.com/download здесь]), который включает в себя интерпретатор языка Python, библиотеки <br>для обработки, анализа и визуализации данных, а также среду для работы '''Jupyter Notebook'''. Также есть возможность работать в Jupyter Notebook онлайн<br>, используя ресурс [https://colab.research.google.com/ Google Colab] (для создания и редактирования файлов нужен аккаунт Gmail). Подробности по установке и работе – см. ниже в неделе 0.
  
 
== Материалы и лабораторные работы ==
 
== Материалы и лабораторные работы ==
Строка 74: Строка 74:
  
 
* [https://www.dropbox.com/scl/fo/fdhd8958pl2jprj6vkex0/h?rlkey=n2nfc2fz8ydehejtxydcrryui&dl=0 Видеозаписи] занятия и «сырой» ipynb-файл с занятия.
 
* [https://www.dropbox.com/scl/fo/fdhd8958pl2jprj6vkex0/h?rlkey=n2nfc2fz8ydehejtxydcrryui&dl=0 Видеозаписи] занятия и «сырой» ipynb-файл с занятия.
* Конструкция try-except (читать, скачать).
+
* Конструкция try-except ([https://pythonworld.ru/tipy-dannyx-v-python/isklyucheniya-v-python-konstrukciya-try-except-dlya-obrabotki-isklyuchenij.html статья]).
 
* Строки, кортежи, списки и цикл for ([https://github.com/allatambov/ICEF24/blob/main/03-sequences-for.ipynb читать], [https://www.dropbox.com/scl/fi/jks50w0wrlm8xr8j2i5h1/03-sequences-for.ipynb?rlkey=7izjko484g7r77munrghfaxnr&dl=0 скачать]).  
 
* Строки, кортежи, списки и цикл for ([https://github.com/allatambov/ICEF24/blob/main/03-sequences-for.ipynb читать], [https://www.dropbox.com/scl/fi/jks50w0wrlm8xr8j2i5h1/03-sequences-for.ipynb?rlkey=7izjko484g7r77munrghfaxnr&dl=0 скачать]).  
 
* Цикл for, списковые включения, функции zip() и enumerate() ([https://github.com/allatambov/ICEF24/blob/main/04-for-and-friends.ipynb читать], [https://www.dropbox.com/scl/fi/7r9fghymtzvg4kffmovhc/04-for-and-friends.ipynb?rlkey=t170npm3jn19ypct2ips8lzgb&dl=0 скачать]).  
 
* Цикл for, списковые включения, функции zip() и enumerate() ([https://github.com/allatambov/ICEF24/blob/main/04-for-and-friends.ipynb читать], [https://www.dropbox.com/scl/fi/7r9fghymtzvg4kffmovhc/04-for-and-friends.ipynb?rlkey=t170npm3jn19ypct2ips8lzgb&dl=0 скачать]).  
 
* Практикум 2 ([https://github.com/allatambov/ICEF24/blob/main/icef-practice02.ipynb читать], [https://www.dropbox.com/scl/fi/rewcqifhaqcldqflx3j3m/icef-practice02.ipynb?rlkey=7d23wme75u3zps6h2gad2c0z8&dl=0 ipynb]), решения ([https://github.com/allatambov/ICEF24/blob/main/icef-practice02-solutions.ipynb читать], [https://www.dropbox.com/scl/fi/0uoldt71eo2u33d5p9a42/icef-practice02-solutions.ipynb?rlkey=vm4llqpbczmbbz3cs42ej6rum&dl=0 скачать]).
 
* Практикум 2 ([https://github.com/allatambov/ICEF24/blob/main/icef-practice02.ipynb читать], [https://www.dropbox.com/scl/fi/rewcqifhaqcldqflx3j3m/icef-practice02.ipynb?rlkey=7d23wme75u3zps6h2gad2c0z8&dl=0 ipynb]), решения ([https://github.com/allatambov/ICEF24/blob/main/icef-practice02-solutions.ipynb читать], [https://www.dropbox.com/scl/fi/0uoldt71eo2u33d5p9a42/icef-practice02-solutions.ipynb?rlkey=vm4llqpbczmbbz3cs42ej6rum&dl=0 скачать]).
 
* Файлы для практикума: [https://www.dropbox.com/scl/fi/tiwd4j5xyq1n7ajtrl0on/stop_words_ru.txt?rlkey=b7wghr67ovbmwucga3ffvjlnv&dl=0 stop_words_ru.txt], [https://www.dropbox.com/scl/fi/giy325lkaijhvsg8i3vuc/guitar.jpeg?rlkey=ui5pqod0jyo3slx8mm70f0xdh&dl=0 guitar.jpeg].
 
* Файлы для практикума: [https://www.dropbox.com/scl/fi/tiwd4j5xyq1n7ajtrl0on/stop_words_ru.txt?rlkey=b7wghr67ovbmwucga3ffvjlnv&dl=0 stop_words_ru.txt], [https://www.dropbox.com/scl/fi/giy325lkaijhvsg8i3vuc/guitar.jpeg?rlkey=ui5pqod0jyo3slx8mm70f0xdh&dl=0 guitar.jpeg].
 +
 +
Дополнительно:
 +
 +
* Чтение и запись txt-файлов: [https://github.com/allatambov/PyPolit2023/blob/main/txt-files.ipynb конспект].
 +
* Построение облаков слов: подробный [https://www.datacamp.com/tutorial/wordcloud-python тьюториал] от DataCamp.
 +
 +
=== Лабораторная работа 2. Методы на списках и строках ===
 +
 +
Для выполнения лабораторной работы необходимо понимать устройство методов на разных объектах <br>
 +
и уметь применять основные методы на списках и строках.
 +
Для этого (на выбор) можно:
 +
 +
* Прослушать материал [https://edu.hse.ru/course/view.php?id=133389&section=5 темы 5] ''Методы'' онлайн-курса «Python как иностранный».
 +
* Прочитать [https://github.com/allatambov/PyPerm23/blob/main/str-methods.ipynb конспект] лекции ''Методы на строках'', [https://github.com/allatambov/PyPerm23/blob/main/lists-methods.ipynb конспект] лекции ''Методы на списках''.
 +
* Изучить материалы онлайн-учебника Pythontutor: [https://pythontutor.ru/lessons/for_loop/ цикл for], [https://pythontutor.ru/lessons/str/ строки], [https://pythontutor.ru/lessons/lists/ списки, split(), join()].
 +
 +
{| class="wikitable"
 +
|-
 +
! Лабораторная работа !! Задания !! Дедлайн !! Куда сдавать
 +
|-
 +
| [https://github.com/allatambov/ICEF24/blob/main/lab02.ipynb Лабораторная работа 2] || [https://www.dropbox.com/scl/fi/nz8gh4jxz5mvw03n2k40z/lab02.ipynb?rlkey=w01si9p7urtjcow90zqyu19xo&dl=0 ipynb] || 1 марта 16:20 || [https://www.dropbox.com/request/gGaW8bQldd46EzeGX5U3 ссылка] на Dropbox
 +
|-
 +
|}
 +
 +
=== Неделя 3. Словари и работа с API ===
 +
 +
* [https://www.dropbox.com/scl/fo/fya8pth9g2h5e83ckk96l/h?rlkey=6t85hbd27ct63lidxnmp68bzo&dl=0 Видеозаписи] занятия и «сырой» ipynb-файл с занятия.
 +
* Словари ([https://github.com/allatambov/ICEF24/blob/main/dicts.ipynb читать], [https://www.dropbox.com/scl/fi/z3o76c4oygoj9cuv8kso9/dicts.ipynb?rlkey=3g9p0z7509623l54620ypw2gw&dl=0 ipynb]).
 +
* Практикум 3.1. Словари и введение в работу с API ([https://github.com/allatambov/ICEF24/blob/main/icef-practice03-01.ipynb читать], [https://www.dropbox.com/scl/fi/822fj83hqpiwhlxbx3aal/icef-practice03-01.ipynb?rlkey=r7jymrohre758thlmpwcgcpxm&dl=0 ipynb]), решения ([https://github.com/allatambov/ICEF24/blob/main/icef-practice03-01-solutions.ipynb читать], [https://www.dropbox.com/scl/fi/p9a0kh5z6rem4903380br/icef-practice03-01-solutions.ipynb?rlkey=8432aksikhtcsra1c7zszgrno&dl=0 ipynb]).
 +
* Практикум 3.2. Работа с API ВКонтакте ([https://github.com/allatambov/ICEF24/blob/main/icef-practice03-02.ipynb читать], [https://www.dropbox.com/scl/fi/9ya9479b4hgr2tqipf1dw/icef-practice03-02.ipynb?rlkey=8ols0slbfjor2yodo1btayjl5&dl=0 ipynb]), решения ([https://github.com/allatambov/ICEF24/blob/main/icef-practice03-02-solutions.ipynb читать], [https://www.dropbox.com/scl/fi/m1ojmfhlm0ti46l7qem3p/icef-practice03-02-solutions.ipynb?rlkey=vs0j5vp53xv1e4nw393oohxt8&dl=0 ipynb]).
 +
 +
Дополнительно:
 +
 +
* Pythontutor: [https://pythontutor.ru/lessons/sets/ множества], [https://pythontutor.ru/lessons/dicts/ словари].
 +
 +
=== Лабораторная работа 3. Функции и lambda-функции ===
 +
 +
Для выполнения лабораторной работы необходимо уметь писать пользовательские функции,<br>
 +
уметь писать lambda-функции и сочетать их с другими функциями Python.
 +
 +
Для этого можно:
 +
 +
* Прослушать материал [https://edu.hse.ru/course/view.php?id=133389&section=8 темы 8] ''Функции'' (достаточно первого раздела) онлайн-курса «Python как иностранный».
 +
* Прочитать [https://github.com/allatambov/PyPerm23/blob/main/functions-short.ipynb конспект] лекции ''Функции'' (для желающих – более подробная [https://nbviewer.org/github/ischurov/pythonhse/blob/master/Lecture%204.ipynb лекция] И.В.Щурова).
 +
* Прочитать [https://github.com/allatambov/ICEF24/blob/main/lambda-functions.ipynb конспект] по lambda-функциям.
 +
 +
{| class="wikitable"
 +
|-
 +
! Лабораторная работа !! Задания !! Дедлайн !! Куда сдавать
 +
|-
 +
| [https://github.com/allatambov/ICEF24/blob/main/lab03.ipynb Лабораторная работа 3] || [https://www.dropbox.com/scl/fi/51zk64h1yi0j9pkz78t7o/lab03.ipynb?rlkey=pok7lx6cmhxifldpj6bmcbevy&dl=0 ipynb] || 11 марта 23:59 || [https://www.dropbox.com/request/rNTY3RT2LDsEtSQqmP2W ссылка] на Dropbox
 +
|-
 +
|}
 +
 +
=== Лабораторная работа 4. Цикл while и его аналоги ===
 +
 +
Для выполнения лабораторной работы необходимо самостоятельно познакомиться с циклом while<br> и конструкцией цикл for + оператор break (последняя – по желанию).
 +
Для этого можно:
 +
 +
* Прослушать материал [https://edu.hse.ru/course/view.php?id=133389&section=3 темы 3] ''Цикл while'' онлайн-курса «Python как иностранный».
 +
* Прочитать [https://github.com/allatambov/PyPolit2023/blob/main/while-loop.ipynb конспект] краткой лекции ''Цикл while и его альтернативы''.
 +
* Изучить материалы онлайн-учебника Pythontutor: [https://pythontutor.ru/lessons/while/ цикл while].
 +
 +
{| class="wikitable"
 +
|-
 +
! Лабораторная работа !! Задания !! Дедлайн !! Куда сдавать
 +
|-
 +
| [https://github.com/allatambov/ICEF24/blob/main/lab04.ipynb Лабораторная работа 4] || [https://www.dropbox.com/scl/fi/19g2zmjk1v09d3e4vcmq2/lab04.ipynb?rlkey=scq5bdpsyvb9wqc107lwimxb2&dl=0 ipynb] || 15 марта 16:20 || [https://www.dropbox.com/request/3YKQponIDKKLxKTRHAQW ссылка] на Dropbox
 +
|-
 +
|}
 +
 +
=== Неделя 4. Массивы NumPy и датафреймы Pandas  ===
 +
 +
* [https://www.dropbox.com/scl/fo/3chqh7iqo89byprh78flq/h?rlkey=fwp96j1c8pfydcolk0d6bq23l&dl=0 Видеозаписи] занятия и «сырой» ipynb-файл с занятия.
 +
* Массивы NumPy, последовательности и датафреймы Pandas ([https://github.com/allatambov/ICEF24/blob/main/arrays-pandas.ipynb читать], [https://www.dropbox.com/scl/fi/xpldj5ih2jc9lvgbynih4/arrays-pandas.ipynb?rlkey=axhr6cuh844mv8d83e4ev4sc6&dl=0 ipynb]).
 +
* Операции с датафреймами pandas: часть 1 ([https://github.com/allatambov/ICEF24/blob/main/pandas-intro-part01.ipynb читать], [https://www.dropbox.com/scl/fi/gnm4o88vptczjktkmwmre/pandas-intro-part01.ipynb?rlkey=zddnap2gh24h0isv3amuzcc4b&dl=0 ipynb]), файл [https://www.dropbox.com/scl/fi/hq6wwid36ns2p6fiegws5/Salaries.csv?rlkey=yka8pmz16id8ti71maaor576f&dl=0 Salaries.csv].
 +
 +
Дополнительно:
 +
 +
* Официальная документация [https://numpy.org/doc/stable/ NumPy] и [https://pandas.pydata.org/docs/ Pandas], [https://matplotlib.org/stable/users/index Matplotlib].
 +
* [https://matplotlib.org/stable/gallery/color/named_colors.html Цвета] в Python, веселый [https://colorscheme.ru/color-names.html список] цветов.
 +
* Вводный практикум по работе с выборками (есть ящики с усами): [https://github.com/allatambov/QuantData23/blob/main/qd-practice02-upd.ipynb читать], файл [https://www.dropbox.com/scl/fi/8qhjgfit3mucaxtx7ck4l/flats.csv?rlkey=vfym0gova9x16rket70t5wj7d&dl=0 flats.csv].
 +
 +
=== Неделя 5. Датафреймы Pandas. Знакомство с HTML ===
 +
 +
* [https://www.dropbox.com/scl/fo/48dm9c22ayasf17xld7i2/h?rlkey=fplz96n49wkmyycdzmmzf812i&dl=0 Видеозаписи] занятия (разбор практикума 5).
 +
* Операции с датафреймами pandas: часть 2 ([https://github.com/allatambov/ICEF24/blob/main/pandas-intro-part02.ipynb читать], [https://www.dropbox.com/scl/fi/2golnkdufpgov8mmwkngh/pandas-intro-part02.ipynb?rlkey=m8d8wbkylhcsrcyud70tkadg1&dl=0 ipynb]), файл [https://www.dropbox.com/scl/fi/hq6wwid36ns2p6fiegws5/Salaries.csv?rlkey=yka8pmz16id8ti71maaor576f&dl=0 Salaries.csv].
 +
* Практикум 5. Обрабатываем посты ВКонтакте ([https://github.com/allatambov/ICEF24/blob/main/icef-practice05.ipynb читать], [https://www.dropbox.com/scl/fi/fqgi046je4pxzrbas8czb/icef-practice05.ipynb?rlkey=txjx1dxlxnwj60fmcrb0grj34&dl=0 ipynb]), файл [https://www.dropbox.com/scl/fi/ka5d5ucitk8ri4s2r95jg/final.xlsx?rlkey=x0qongg7nms6cefeca973qb0r&dl=0 final.xlsx], решения ([https://github.com/allatambov/ICEF24/blob/main/icef-practice05-solutions.ipynb читать], [https://www.dropbox.com/scl/fi/3vymcpa54jb0o9hajbwny/icef-practice05-solutions.ipynb?rlkey=phhrlrt5shgf7txqga47tcruq&dl=0 ipynb]).
 +
* Знакомство с HTML ([https://www.dropbox.com/scl/fi/6b61quoe20br486gavm7p/Intro_HTML.pdf?rlkey=ges2irgih8hsn03z37wblqsp1&dl=0 слайды]).
 +
 +
=== Неделя 6. Парсинг HTML с BeautifulSoup и Selenium ===
 +
 +
* [https://www.dropbox.com/scl/fo/jnrj7xj2s0jlx22utgx28/h?rlkey=6elerpp4ksnp0fnl9jw5g51rx&dl=0 Видеозаписи] занятий.
 +
* Практикум 6.1. Парсинг с BeautifulSoup: тэги и атрибуты ([https://github.com/allatambov/ICEF24/blob/main/icef-practice06.ipynb читать], [https://www.dropbox.com/scl/fi/b3xu5t3d7b4g5u301eky8/icef-practice06.ipynb?rlkey=beszu41u7a2vbykq8ksqgl8a1&dl=0 ipynb]), решения ([https://github.com/allatambov/ICEF24/blob/main/icef-practice06-solutions.ipynb читать], [https://www.dropbox.com/scl/fi/hkvpwjkzuagsax5hi8ha2/icef-practice06-solutions.ipynb?rlkey=mw7t6b2m4pzb47xiwdzieh8uc&dl=0 ipynb]).
 +
* Практикум 6.2. Управление браузером с Selenium: поиск элементов на странице и XPATH ([https://github.com/allatambov/ICEF24/blob/main/icef-practice06-02.ipynb читать], [https://www.dropbox.com/scl/fi/q6vvw04g0gkuh52hl45r4/icef-practice06-02.ipynb?rlkey=lpv9vfsflhbxskrhqj107h6s9&dl=0 ipynb]), решения ([https://github.com/allatambov/ICEF24/blob/main/icef-practice06-02-solutions.ipynb читать], [https://www.dropbox.com/scl/fi/369vz2fyel6v2qpwpjoom/icef-practice06-02-solutions.ipynb?rlkey=hw1lpaqc3jd7mw57d4ldsr4z8&dl=0 ipynb])
 +
 +
Дополнительно:
 +
 +
* Обработка таблиц из HTML с помощью pandas ([https://github.com/allatambov/WebScrape24/blob/main/psy-bs-pandas.ipynb читать])
 +
 +
=== Неделя 7. Управление браузером с Selenium: продолжение ===
 +
 +
* [https://www.dropbox.com/scl/fo/0szjj5oq0pwjqpqatmlid/AO9zXQGLey5cDPvJP21Q21Y?rlkey=myvfy47twpfx95gzljlqut8cg&dl=0 Видеозаписи] занятий.
 +
* Практикум 7.1. Управление браузером с Selenium: динамические таблицы ([https://www.dropbox.com/scl/fi/pj67oqm2hbvukb643g37q/icef-practice07-01.ipynb?rlkey=8g8myhd62hsgdss9flw6f0eus&dl=0 ipynb]), решения ([https://github.com/allatambov/ICEF24/blob/main/icef-practice07-01_solutions.ipynb читать], [https://www.dropbox.com/scl/fi/bh2he1wg8lz7n4qo5fxzn/icef-practice07-01_solutions.ipynb?rlkey=eb3h8u945x2fx80iwqs3mfdhd&dl=0 ipynb])
 +
* Практикум 7.2. Парсинг HTML и обработка JSON ([https://www.dropbox.com/scl/fi/khugq7c3bd0kdxvkn572o/icef-practice07-02.ipynb?rlkey=s3rbx8l9ly8n4sif57bq35suy&dl=0 ipynb])
 +
 +
Дополнительно:
 +
 +
* Скачивание файлов с Selenium ([https://github.com/allatambov/WebScrape24/blob/main/psy-practice07-02.ipynb читать])
 +
* Управление браузером с Selenium: работа с ВКонтакте и пример скроллинга ([https://github.com/allatambov/WebScrape24/blob/main/psy-practice06-02-solutions.ipynb читать]), решения ([https://github.com/allatambov/ICEF24/blob/main/icef-practice07-02_solutions.ipynb читать], [https://www.dropbox.com/scl/fi/r8mxvx799jd7joj3b8b5f/icef-practice07-02_solutions.ipynb?rlkey=ucbdrzy7ufkbqymhmb7gif4to&dl=0 ipynb])
 +
 +
=== Лабораторная работа 5*. Датафреймы pandas ===
 +
 +
''Выполняется по желанию, оценку за эту работу можно перенести на пропущенную''<br>
 +
''лабораторную или на лабораторную с самой низкой оценкой.''
 +
 +
{| class="wikitable"
 +
|-
 +
! Лабораторная работа !! Задания !! Дедлайн !! Куда сдавать
 +
|-
 +
| [https://github.com/allatambov/ICEF24/blob/main/lab05.ipynb Лабораторная работа 5*] || [https://www.dropbox.com/scl/fi/12wyvoa16nv9qluc5lj6w/lab05.ipynb?rlkey=s1u36aasqrhr34f0fb7d8e3qt&dl=0 ipynb] [https://www.dropbox.com/scl/fi/o18712hhk6y0rl5tzt3oz/polit.csv?rlkey=rn9y6srs8utz1zf7d7xeycxof&dl=0 polit.csv]|| 19 апреля 16:20 || [https://www.dropbox.com/request/yLWwBC53VlaGO9QqrfvZ ссылка] на Dropbox
 +
|-
 +
|}
 +
 +
== Домашние задания ==
 +
 +
{| class="wikitable"
 +
|-
 +
! Домашнее задание !! Задания !! Дедлайн !! Куда сдавать
 +
|-
 +
| [https://github.com/allatambov/ICEF24/blob/main/icef-hw01.ipynb Домашнее задание 1] || [https://www.dropbox.com/scl/fi/muypoouagcdbbasvhlrta/icef-hw01.ipynb?rlkey=q2zzuxw754z2uguzzy5rjqfsf&dl=0 ipynb] || 1 апреля 23:59 || [https://www.dropbox.com/request/5tSIuKOJ4dIGO4qAyG1z ссылка] на Dropbox
 +
|-
 +
|-
 +
| Домашнее задание 2 || см. почту || 22 апреля 23:59 || [https://www.dropbox.com/request/oyS4iREQJKgcKFZprc3w ссылка] на Dropbox
 +
|-
 +
|}

Текущая версия на 14:45, 15 апреля 2024

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

Это страница курса «Python для сбора и анализа данных», читаемого в МИЭФ в весеннем семестре 2023-2024 учебного года.

Преподаватель: Тамбовцева Алла Андреевна.

Правила игры

  • Организационная презентация.
  • Формула оценки: 0.2 * Домашние задания + 0.3 * Лабораторные работы + 0.2 * Тест + 0.3 * Экзамен.
  • Дедлайны у лабораторных работ жёсткие и не переносятся.
  • Домашние задания, сданные позже дедлайна, оцениваются со штрафом: в пределах часа – 15% от оценки, суток – 30%, двух суток – 50%.
  • Вспомогательный онлайн-курс «Python как иностранный».

Программное обеспечение

Перед занятиями необходимо установить дистрибутив Anaconda (скачать можно здесь), который включает в себя интерпретатор языка Python, библиотеки
для обработки, анализа и визуализации данных, а также среду для работы Jupyter Notebook. Также есть возможность работать в Jupyter Notebook онлайн
, используя ресурс Google Colab (для создания и редактирования файлов нужен аккаунт Gmail). Подробности по установке и работе – см. ниже в неделе 0.

Материалы и лабораторные работы

Неделя 0. Подготовка к работе. Настройка рабочего места

Для подготовки к работе на курсе можно ознакомиться со следующими материалами онлайн-курса:

А также с материалами по работе в Jupyter Notebook и Google Colab:

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

Неделя 1. Введение в Python. Переменные и типы данных. Ввод и вывод

  • Видеозаписи занятия и «сырой» ipynb-файл с занятия.
  • Вычисления в Python, переменные и типы данных (читать, ipynb).
  • Ввод и вывод, форматирование строк, форматирование дат (читать, ipynb).
  • Практикум 1 (читать, ipynb), решения (читать, ipynb).
  • Интерактивные виджеты в Jupyter (альтернатива стандартному вводу и не только).

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

Лабораторная работа 1. Логические выражения и условные конструкции

Для выполнения лабораторной работы необходимо вспомнить формулировку логических выражений
и конструкцию if-elif-else. Для этого (на выбор) можно:

  • Прослушать материал темы 2 Условия и логические выражения онлайн-курса «Python как иностранный».
  • Прочитать конспект лекции Логические выражения и условные конструкции.
  • Изучить материалы онлайн-учебника Pythontutor.
Лабораторная работа Задания Дедлайн Куда сдавать
Лабораторная работа 1 ipynb 16 февраля 16:20 ссылка на Dropbox

Неделя 2. Строки, кортежи, списки. Цикл for и его аналоги

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

Лабораторная работа 2. Методы на списках и строках

Для выполнения лабораторной работы необходимо понимать устройство методов на разных объектах
и уметь применять основные методы на списках и строках. Для этого (на выбор) можно:

Лабораторная работа Задания Дедлайн Куда сдавать
Лабораторная работа 2 ipynb 1 марта 16:20 ссылка на Dropbox

Неделя 3. Словари и работа с API

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

Лабораторная работа 3. Функции и lambda-функции

Для выполнения лабораторной работы необходимо уметь писать пользовательские функции,
уметь писать lambda-функции и сочетать их с другими функциями Python.

Для этого можно:

  • Прослушать материал темы 8 Функции (достаточно первого раздела) онлайн-курса «Python как иностранный».
  • Прочитать конспект лекции Функции (для желающих – более подробная лекция И.В.Щурова).
  • Прочитать конспект по lambda-функциям.
Лабораторная работа Задания Дедлайн Куда сдавать
Лабораторная работа 3 ipynb 11 марта 23:59 ссылка на Dropbox

Лабораторная работа 4. Цикл while и его аналоги

Для выполнения лабораторной работы необходимо самостоятельно познакомиться с циклом while
и конструкцией цикл for + оператор break (последняя – по желанию). Для этого можно:

  • Прослушать материал темы 3 Цикл while онлайн-курса «Python как иностранный».
  • Прочитать конспект краткой лекции Цикл while и его альтернативы.
  • Изучить материалы онлайн-учебника Pythontutor: цикл while.
Лабораторная работа Задания Дедлайн Куда сдавать
Лабораторная работа 4 ipynb 15 марта 16:20 ссылка на Dropbox

Неделя 4. Массивы NumPy и датафреймы Pandas

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

Неделя 5. Датафреймы Pandas. Знакомство с HTML

Неделя 6. Парсинг HTML с BeautifulSoup и Selenium

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

  • Обработка таблиц из HTML с помощью pandas (читать)

Неделя 7. Управление браузером с Selenium: продолжение

  • Видеозаписи занятий.
  • Практикум 7.1. Управление браузером с Selenium: динамические таблицы (ipynb), решения (читать, ipynb)
  • Практикум 7.2. Парсинг HTML и обработка JSON (ipynb)

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

  • Скачивание файлов с Selenium (читать)
  • Управление браузером с Selenium: работа с ВКонтакте и пример скроллинга (читать), решения (читать, ipynb)

Лабораторная работа 5*. Датафреймы pandas

Выполняется по желанию, оценку за эту работу можно перенести на пропущенную
лабораторную или на лабораторную с самой низкой оценкой.

Лабораторная работа Задания Дедлайн Куда сдавать
Лабораторная работа 5* ipynb polit.csv 19 апреля 16:20 ссылка на Dropbox

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

Домашнее задание Задания Дедлайн Куда сдавать
Домашнее задание 1 ipynb 1 апреля 23:59 ссылка на Dropbox
Домашнее задание 2 см. почту 22 апреля 23:59 ссылка на Dropbox