курс Язык программирования Питон
Эта страница содержит вспомогательные материалы к курсу, проходившему в осеннем семестре 2008 года, и довольно бесполезна в качестве самостоятельного текста. Наиболее полезная информация находится на странице ссылки
Задания можно выполнять, зайдя по ssh на kodomo.fbb.msu.ru. Интерпретатор запускается командой python. Желающие могут скачать реализацию и пользоваться ей дома (см. полезные ссылки).
- В течение занятия я могу править задания, если в них обнаружились ошибки, поэтому иногда обновляйте окно браузера с заданием; после занятия я добавляю разъяснения по тем вопросам, которые вызвали больше всего проблем.
Если остались какие-то вопросы, пишите на почту:
Занятия
Список рассылки – чтобы читать страницу нужно влогиниться (используя свой стандартный пароль и логин)
Полезные ссылки – где что скачать, какие есть хорошие тексты по теме в сети
- Занятие 1.
Вводные слова. Питон как калькулятор (числа, строки, списки). Поиск документации по языку (dir, help, pydoc, сайты). Простейшая работа с файлами.
- Занятие 2.
Репозиторий. Python как скриптовый язык. Самодокументация модулей. Конструкции if, for, def...
- Занятие 3.
Первая полноценная программа своими руками.
- Занятие 4.
Объекты. Классы.
- Занятие 5.
Практическое занятие.
- Занятие 6.
Введение в программирование для PyMol
- Занятие 7.
Исключения.
- Занятие 8.
Новое про списки.
- Занятие 9.
Практическое занятие.
- Занятие 10.
dict и всё, что с ним связано. Важные частные случаи работы со строками: русский язык, кодировки, специальные типы строк.
- Занятие 11.
Функции высшего порядка.
- Занятие 12.
Заключительные слова. Обзор незатронутых свойств языка. Обзор полезных неупомянутых библиотек.
Рейтинговые задания
Вне зависимости от зачёта, за курс выставляется рейтинг. Рейтинг суммируется из оценок за каждое рейтинговое задание. Критерии оценки прописываются для каждого задания отдельно.
- Задание r1: код Цезаря
- Задание r2: данные о PDB
- Задание r3: рисование рамок
- Задание r4: статистика FASTA-файла
Кроме оценки за задание, к каждой задаче прибавляются общие бонусы:
- +0..+2 балла за чистый код в предъявляемой версии (отсутствие мёртвых фрагментов кода; отсутствие закомментированных фрагментов кода; наличие пустых строк там, где они способствуют читаемости кода; отсутствие необоснованных групп пустых строк подряд; однородный подход к отступам по всей программе; содержательные краткие названия переменных, методов и классов словами или не вызывающими сомнений сокращениями на английском языке; наличие содержательных и кратких комментариев на английском языке там, где они необходимы для простоты чтения кода; отсутствие в программе нетривиальных неименованных констант)
- +0..+2 балла за корректную самодокументацию ко всем документируемым элементам программы (модулю, функциям, если есть, классам, если есть, методам классов, если есть); самодокументация должна быть написана на английском языке и описывать способы работы и поведение [того, что она описывает], а не констатировать название или номер задания
- +0..+2 балла за наличие информативных примеров doctest
- +0..+2 балла за хорошее оформление репозитория, касающееся файлов задания (хорошее оформление подразумевает краткие комментарии на английском языке, обобщающие содержание изменения; изменения должны быть небольшими, тематически-замкнутыми)
Зачётные задания
Для зачёта нужно выбрать одно задание, найти напарника (в зависимости от сложности задания, может быть больше одного напарника) для его решения, разделить зоны ответственности в реализации и выполнить задание. Точные критерии приёма задания формулируются в описании.
Участники – чтобы проще было идентифицировать.
Заметки – размышления о том, что и как рассказывать.