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

Материал из Wiki - Факультет компьютерных наук
Перейти к навигации Перейти к поиску
Нет описания правки
Нет описания правки
 
(не показано 20 промежуточных версий 2 участников)
Строка 8: Строка 8:


На курсе есть лекции и семинары.
На курсе есть лекции и семинары.
[https://www.youtube.com/playlist?list=PLEwK9wdS5g0oHIFPHafG0tnHekDBxE6Oy запись лекций и семинаров]




Строка 39: Строка 40:


[https://hse-programming-intro.manytask.org/ Manytask]
[https://hse-programming-intro.manytask.org/ Manytask]
[https://www.youtube.com/playlist?list=PLEwK9wdS5g0oHIFPHafG0tnHekDBxE6Oy запись занятий]


=== Пререквизиты курса ===
=== Пререквизиты курса ===
Строка 84: Строка 87:
[https://colab.research.google.com/drive/1LWtC9J6FckQpEF5vkB7G84IAaTUhG5qZ примеры]
[https://colab.research.google.com/drive/1LWtC9J6FckQpEF5vkB7G84IAaTUhG5qZ примеры]


==Лекция 6. Unicode==
===Лекция 7. tuple, collections===
[https://docs.google.com/presentation/d/16OnHqGIGwpHoaUIVGysRabCJPMxAuObtSDJ5FzLAREA/edit?usp=sharing слайды]
recap https://nedbatchelder.com/text/unipain.html
[https://colab.research.google.com/drive/1LWtC9J6FckQpEF5vkB7G84IAaTUhG5qZ примеры]
examples https://colab.research.google.com/drive/1wwc0FNK_XjF0qNozhD-d2CT9sWs8o_eQ
 
===Лекция 8. venv, pip and code style===
[https://docs.google.com/presentation/d/1RwGpuhgpYjyFBmU-KNSTkKWH2XwavOTaqGVWYlN52j0/edit#slide=id.g7ed131fe46_0_62 слайды]
 
===Лекция 9. функции, звёздочки, декораторы===
[https://github.com/yandexdataschool/python_public/blob/master/slides/3.Functions_and_IO.ipynb слайды 1 ]
 
[https://github.com/yandexdataschool/python_public/blob/master/slides/4.Functions_and_Decorators.ipynb слайды 2]
 
[https://colab.research.google.com/drive/1QGQ2bw9Ah6mVnlZDe8G9YnpaNr0Jy3Rz примеры]
 
===Лекция 10. Ошибки в программах и их обработка===
[https://docs.google.com/presentation/d/15TEQoJs_jxoU9gLvVvbSmipdAJw8CWO6__deSxdSdKs/edit#slide=id.g51bcb4165c_0_247 слайды]
 
===Лекция 11. Как использовать http api===
[https://zoom.us/j/304876602 зум 11 апреля 10-30]
 
[https://docs.google.com/presentation/d/1qOvVbwaDes444tMEs-7ITO16eR-opgkK5riAHOze6iE/edit#slide=id.g557a96828e_0_58 слайды]
[https://github.com/yandexdataschool/python_public/blob/master/slides/9.WEB_and_APIS.ipynb примеры]
 
===Лекция 12. Сети===
[https://zoom.us/j/304876602 зум 18 апреля 10-30]
 
[https://docs.google.com/presentation/d/1OrjLHz4rb9IUDBfHAsONNjbgCQkLH1fKVfzV9RKV6b0/edit?usp=sharing слайды]
 
===Лекция 13. Базы данных===
[https://zoom.us/j/304876602 зум 25 апреля 10-30]
 
[https://docs.google.com/presentation/d/1oJDDzGtREEey0hdlrpGbkEMOewKUM5DFiRWDaIpYFlY/edit?usp=sharing слайды]
 
===Лекция 14. Итераторы и генераторы===
[https://zoom.us/j/304876602 зум 16 мая 10-30]
 
[https://github.com/yandexdataschool/python_public/blob/master/slides/7.Iterators_n_Generators.ipynb слайды]
[http://www.dabeaz.com/generators/Generators.pdf примеры]
[https://colab.research.google.com/drive/1Bdm1y2lAHPU7zHEYG2sDY0XQQsRy1O-9?usp=sharing практика]
 
[https://compscicenter.ru/courses/python/2018-autumn/classes/4299/ advanced лекция по теме]
 
===Лекция 15. Тестирование===
[https://zoom.us/j/304876602 зум 23 мая 10-30]
 
[https://drive.google.com/file/d/1RS5mAb_xv6qLNJaRfqfB6JPWrXpau3vZ/view?usp=sharing слайды]
[https://docs.python.org/3/howto/logging.html logging]
 
 
полезные ссылки:
 
[https://docs.python.org/3/library/unittest.html unittest]
[https://docs.python.org/3/library/doctest.html doctest]
[https://docs.python.org/3/library/unittest.mock.html unittest.mock]
 
[http://misko.hevery.com/attachments/Guide-Writing%20Testable%20Code.pdf дизайн тестируемого приложения]
 
===Бонус. Numpy,Pandas===
[https://yadi.sk/i/n7wdVpuMtiXAkg видео лекции по pandas]


== Семинары ==
== Семинары ==
Строка 97: Строка 156:


== Новости курса ==
== Новости курса ==
 
В 4-ом модуле занятия очные занятия курса переносятся в Zoom. Ссылки на встречи будут публиковаться в telegram-чате курса.


== Полезные материалы ==
== Полезные материалы ==

Текущая версия от 09:43, 23 мая 2020

Занятия потока 2020 года начались 11 января.

О курсе

borderless
borderless

Курс читается для студентов факультета математики ВШЭ в 3-4 модулях.

На курсе есть лекции и семинары. запись лекций и семинаров


Лектор: Иванникова Вероника https://tlg.name/apple_veronika

Семинарист Дмитрий Контуров https://tlg.name/Kipnell

Ассистенты Мовсес Элбакян https://tlg.name/sesvom Дмитрий Попов https://tlg.name/foksly

Расписание

Занятие в пятницу 24 января повтор второго семинара будет на Усачева, 318 аудитория. Занятие в субботу 25 января лекция и семинар будут на Покровский бульвар, 11, аудитория D208.


Лекции - 2-ая пара в субботу.

Семинары - 1-ая группа 3-ая пара в субботу, 2-ая группа 2-ая пара в пятницу. Группа на выбор, посещать нужно только один из семинаров.

Необходимые ссылки

Чат курса

карточка курса

форма для анонимной обратной связи

Manytask

запись занятий

Пререквизиты курса

От слушателей курса ожидается:

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


Формула оценки

Сумма всех полученных баллов за все задания нормированная на 10.

Как сдавать задания в системе Manytask

Настройте Manytask по инструкции.

Лекции

Лекция 1. Введение

13.01 Обзор возможностей языка. Философия Python, классы решаемых задач. Интерпретация программы на Python. Память, процессор.

слайды

Лекция 2. Основы работы в Unix-среде

18.01 stdin, stdout, stderr

слайды примеры

Лекция 3.Pipe. Асимптотики. Линейные структуры данных

слайды

Лекция 4-5. dict, tuple. Объектная модель Python

слайды

обещанная ссылка python data model

задачка

Лекция 6. Unicode

слайды примеры

Лекция 7. tuple, collections

recap https://nedbatchelder.com/text/unipain.html examples https://colab.research.google.com/drive/1wwc0FNK_XjF0qNozhD-d2CT9sWs8o_eQ

Лекция 8. venv, pip and code style

слайды

Лекция 9. функции, звёздочки, декораторы

слайды 1

слайды 2

примеры

Лекция 10. Ошибки в программах и их обработка

слайды

Лекция 11. Как использовать http api

зум 11 апреля 10-30

слайды примеры

Лекция 12. Сети

зум 18 апреля 10-30

слайды

Лекция 13. Базы данных

зум 25 апреля 10-30

слайды

Лекция 14. Итераторы и генераторы

зум 16 мая 10-30

слайды примеры практика

advanced лекция по теме

Лекция 15. Тестирование

зум 23 мая 10-30

слайды logging


полезные ссылки:

unittest doctest unittest.mock

дизайн тестируемого приложения

Бонус. Numpy,Pandas

видео лекции по pandas

Семинары

Семинар 1. Организационный, работа в терминале

Note! Очень желательно принести с собой ноутбук.

1. Работа в терминале

Новости курса

В 4-ом модуле занятия очные занятия курса переносятся в Zoom. Ссылки на встречи будут публиковаться в telegram-чате курса.

Полезные материалы

Основная литература

  1. Н.А.Ворожцов, А.В.Винокуров, 2008. Практика и теория программирования. Физматкнига
  2. Документация языка Python https://docs.python.org/3/
  3. Б.У. Керниган, Р. Пайк , 2017. Практика программирования. Вильямс
  4. Micha Gorelick, Ian Ozsvald, 2014. High Performance Python
  5. Лучано Рамальо, 2016. Python. К вершинам мастерства