Основы программирования на Python весна 2020 матфак — различия между версиями
(не показаны 32 промежуточные версии 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 запись занятий] | ||
=== Пререквизиты курса === | === Пререквизиты курса === | ||
Строка 51: | Строка 54: | ||
=== Как сдавать задания в системе Manytask=== | === Как сдавать задания в системе Manytask=== | ||
− | + | Настройте Manytask [https://gitlab.com/appleveronika/hse-programming-intro/blob/master/README.md по инструкции]. | |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
[[Файл:Manytask.png|500px|безрамки]] | [[Файл:Manytask.png|500px|безрамки]] | ||
Строка 84: | Строка 72: | ||
[https://docs.google.com/presentation/d/1mkUumUz5_T3oZ4VVn0bwWcKmcMQWvbolqLmIviQUbKs/edit?usp=sharing слайды] | [https://docs.google.com/presentation/d/1mkUumUz5_T3oZ4VVn0bwWcKmcMQWvbolqLmIviQUbKs/edit?usp=sharing слайды] | ||
[https://drive.google.com/open?id=1Yu1CrYvDPOcqSkMB5v8YamZTJmrEsAJ5 примеры] | [https://drive.google.com/open?id=1Yu1CrYvDPOcqSkMB5v8YamZTJmrEsAJ5 примеры] | ||
+ | |||
+ | === Лекция 3.Pipe. Асимптотики. Линейные структуры данных=== | ||
+ | [https://docs.google.com/presentation/d/1nUm1urh4vcSCGSP6zNUwelFfKq2u6-pFPvl33z26Rgo/edit?usp=sharing слайды] | ||
+ | |||
+ | ===Лекция 4-5. dict, tuple. Объектная модель Python=== | ||
+ | [https://docs.google.com/presentation/d/1o0J774lC7W2K9M5x1WgOXUL6SMS1Lpxb-zB7GnpCgOc/edit слайды] | ||
+ | |||
+ | обещанная ссылка [https://docs.python.org/3/reference/datamodel.html python data model] | ||
+ | |||
+ | [https://colab.research.google.com/drive/1fqhDLLLP9_BwMI075fsjFdsjp0uEzoQ0#scrollTo=3I0ZCAthYaGw задачка] | ||
+ | |||
+ | ===Лекция 6. Unicode=== | ||
+ | [https://docs.google.com/presentation/d/16OnHqGIGwpHoaUIVGysRabCJPMxAuObtSDJ5FzLAREA/edit?usp=sharing слайды] | ||
+ | [https://colab.research.google.com/drive/1LWtC9J6FckQpEF5vkB7G84IAaTUhG5qZ примеры] | ||
+ | |||
+ | ===Лекция 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=== | ||
+ | [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] | ||
== Семинары == | == Семинары == | ||
Строка 94: | Строка 156: | ||
== Новости курса == | == Новости курса == | ||
− | + | В 4-ом модуле занятия очные занятия курса переносятся в Zoom. Ссылки на встречи будут публиковаться в telegram-чате курса. | |
== Полезные материалы == | == Полезные материалы == |
Текущая версия на 12:43, 23 мая 2020
Занятия потока 2020 года начались 11 января.
Содержание
- 1 О курсе
- 2 Лекции
- 2.1 Лекция 1. Введение
- 2.2 Лекция 2. Основы работы в Unix-среде
- 2.3 Лекция 3.Pipe. Асимптотики. Линейные структуры данных
- 2.4 Лекция 4-5. dict, tuple. Объектная модель Python
- 2.5 Лекция 6. Unicode
- 2.6 Лекция 7. tuple, collections
- 2.7 Лекция 8. venv, pip and code style
- 2.8 Лекция 9. функции, звёздочки, декораторы
- 2.9 Лекция 10. Ошибки в программах и их обработка
- 2.10 Лекция 11. Как использовать http api
- 2.11 Лекция 12. Сети
- 2.12 Лекция 13. Базы данных
- 2.13 Лекция 14. Итераторы и генераторы
- 2.14 Лекция 15. Тестирование
- 2.15 Бонус. Numpy,Pandas
- 3 Семинары
- 4 Новости курса
- 5 Полезные материалы
О курсе
Курс читается для студентов факультета математики ВШЭ в 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-ая пара в пятницу. Группа на выбор, посещать нужно только один из семинаров.
Необходимые ссылки
форма для анонимной обратной связи
Пререквизиты курса
От слушателей курса ожидается:
- базовое знание 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. функции, звёздочки, декораторы
Лекция 10. Ошибки в программах и их обработка
Лекция 11. Как использовать http api
Лекция 12. Сети
Лекция 13. Базы данных
Лекция 14. Итераторы и генераторы
Лекция 15. Тестирование
полезные ссылки:
unittest doctest unittest.mock
дизайн тестируемого приложения
Бонус. Numpy,Pandas
Семинары
Семинар 1. Организационный, работа в терминале
Note! Очень желательно принести с собой ноутбук.
1. Работа в терминале
Новости курса
В 4-ом модуле занятия очные занятия курса переносятся в Zoom. Ссылки на встречи будут публиковаться в telegram-чате курса.
Полезные материалы
Основная литература
- Н.А.Ворожцов, А.В.Винокуров, 2008. Практика и теория программирования. Физматкнига
- Документация языка Python https://docs.python.org/3/
- Б.У. Керниган, Р. Пайк , 2017. Практика программирования. Вильямс
- Micha Gorelick, Ian Ozsvald, 2014. High Performance Python
- Лучано Рамальо, 2016. Python. К вершинам мастерства