Язык программирования Python 2026/27 (основной поток): различия между версиями

Материал из Wiki - Факультет компьютерных наук
Перейти к навигации Перейти к поиску
Нет описания правки
Нет описания правки
Строка 30: Строка 30:
| БПМИ265-2 || [https://t.me/samonenko Самоненко Илья] || [https://t.me/anikin_sanya Аникин Александр]
| БПМИ265-2 || [https://t.me/samonenko Самоненко Илья] || [https://t.me/anikin_sanya Аникин Александр]
|-
|-
| БПМИ267-1 || [https://t.me/spnechaev Нечаев Сергей] || [https://t.me/niks_zol Золина Вероника]
| БПМИ267-1 || [https://t.me/spnechaev Нечаев Сергей] || [https://t.me/Sufleshka0_0 Гиндуллин Динар]
|-
|-
| БПМИ267-2 || [https://t.me/spnechaev Нечаев Сергей] || [https://t.me/niks_zol Золина Вероника]
| БПМИ267-2 || [https://t.me/spnechaev Нечаев Сергей] || [https://t.me/Sufleshka0_0 Гиндуллин Динар]
|-
|-
| БПМИ268-1 || [https://t.me/Sm1Ling Арифханов Азаматхан] || [https://t.me/yankerik Иванов Кирилл]
| БПМИ268-1 || [https://t.me/Sm1Ling Арифханов Азаматхан] || [https://t.me/yankerik Иванов Кирилл]
Строка 42: Строка 42:
| БПМИ269-2 || [https://t.me/qwertwasd Никитин Богдан] || [https://t.me/appk1t Токарев Алексей]
| БПМИ269-2 || [https://t.me/qwertwasd Никитин Богдан] || [https://t.me/appk1t Токарев Алексей]
|-
|-
| БПМИ2610-1 || [https://t.me/slsktnkv Лоскутников Станислав] || [https://t.me/Sufleshka0_0 Гиндуллин Динар]
| БПМИ2610-1 || [https://t.me/slsktnkv Лоскутников Станислав] || [https://t.me/niks_zol Золина Вероника]
|-
|-
| БПМИ2610-2 || [https://t.me/slsktnkv Лоскутников Станислав] || [https://t.me/Sufleshka0_0 Гиндуллин Динар]
| БПМИ2610-2 || [https://t.me/slsktnkv Лоскутников Станислав] || [https://t.me/niks_zol Золина Вероника]
|-
|-
| БПМИ2611-1 || [https://t.me/Alexdat2000 Дацковский Алексей] || [https://t.me/flawiss Курлов Артём]
| БПМИ2611-1 || [https://t.me/Alexdat2000 Дацковский Алексей] || [https://t.me/flawiss Курлов Артём]

Версия от 19:19, 29 августа 2026

О курсе

Ресурс Ссылка
Telegram-канал https://t.me/+MF1ahvQcBZRkNzIy
Чат курса https://t.me/+pnhP7Bdp5hs3MWUy
Репозиторий курса https://sourcecraft.dev/hsemanytask/ami-python-basic-public-26f
Записи лекций место для вашей ссылки

Лектор курса — Даниэль Хайбулин.

Преподаватели и учебные ассистенты

Группа Семинарист Учебный ассистент
БПМИ264-1 Хайбулин Даниэль Кириченко Дмитрий
БПМИ264-2 Лущ Иван Кириченко Дмитрий
БПМИ265-1 Панькова Марина Аникин Александр
БПМИ265-2 Самоненко Илья Аникин Александр
БПМИ267-1 Нечаев Сергей Гиндуллин Динар
БПМИ267-2 Нечаев Сергей Гиндуллин Динар
БПМИ268-1 Арифханов Азаматхан Иванов Кирилл
БПМИ268-2 Арифханов Азаматхан Иванов Кирилл
БПМИ269-1 Никитин Богдан Токарев Алексей
БПМИ269-2 Никитин Богдан Токарев Алексей
БПМИ2610-1 Лоскутников Станислав Золина Вероника
БПМИ2610-2 Лоскутников Станислав Золина Вероника
БПМИ2611-1 Дацковский Алексей Курлов Артём
БПМИ2611-2 Боронин Николай Курлов Артём
БПМИ2612-1 Богданов Сергей Кадыров Таймаз
БПМИ2612-2 Богданов Сергей Кадыров Таймаз
БПМИ2613-1 Мартиросянц Арменак Родионов Артём
БПМИ2613-2 Петрухин Вячеслав Родионов Артём
БПМИ2614-1 Ковалев Александр Сополев Александр
БПМИ2614-2 Караев Михаил Сополев Александр
БПМИ2615-1 Павлов Дмитрий Поздеева Анна
БПМИ2615-2 Павлов Дмитрий Поздеева Анна

Лекции

Тема Домашнее задание
1 Типы данных, операторы, ввод-вывод ДЗ 1
2 Форматирование строк, условия, циклы, файлы ДЗ 2
3 Контейнеры: множества, словари, массивы ДЗ 3
4 Ссылки, изменяемость, копирование, функции ДЗ 4
5 Функции и классы ДЗ 5
6 Наследование, dunder-методы, property, dataclass, enum ДЗ 6
7 Исключения и контекстные менеджеры ДЗ 7
8 Протоколы и интерфейсы, номинальная и структурная типизация ДЗ 8
9 Итераторы и генераторы ДЗ 9
10 Collections и itertools ДЗ 10
11 Пространства имён и декораторы ДЗ 11
12 NumPy и Pandas ДЗ 12
13 Данные из внешнего мира: пути, JSON, CSV, дата и время ДЗ 13
14 Тестирование

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

Домашние задания сдаются в личный репозиторий на SourceCraft. У каждого студента свой форк репозитория курса; решения отправляются обычным git push, после чего их автоматически проверяет CI и выставляет баллы в manytask.

Проверяется не только правильность: помимо тестов запускаются линтер и проверка типов. Задание с падающим линтером не засчитывается, поэтому прогоняйте его локально до отправки — как это делать, написано в README репозитория.

Всего 13 наборов задач, по одному к каждой лекции, плюс вводная задача. У каждого набора два срока: до мягкого задача стоит полный балл, между мягким и жёстким — половину, после жёсткого не оценивается.

Задание Задач Баллов Мягкий срок Жёсткий срок
Вводная задача 1 10 09.09, 23:59 16.09, 23:59
ДЗ 1. Типы данных 11 185 15.09, 23:59 15.09, 23:59
ДЗ 2. Условия, циклы, файлы 12 205 11.09, 23:59 18.09, 23:59
ДЗ 3. Контейнеры 12 215 15.09, 23:59 22.09, 23:59
ДЗ 4. Ссылки и изменяемость 9 260 18.09, 23:59 25.09, 23:59

Остальные задания открываются по ходу курса, вместе с соответствующими лекциями. У ДЗ 1 мягкий и жёсткий сроки совпадают: полный балл держится до 15 сентября, после чего задание закрывается.

Правила оценивания

О_итог = 0,2 · О_семинары + 0,5 · О_дз + 0,3 · О_экзамен

Округление арифметическое, применяется только к итоговой оценке. Блокирующих оценок нет.

Компонента Вес Детали
Семинары 20% правила оценивания и оценки — за семинаристами
Домашние задания 50% 13 наборов задач, по одному к лекции, плюс вводная задача; сдаются в личный репозиторий, проверяются автоматически
Экзамен 30% коллоквиум на сессии

Семинарист вправе снизить общую оценку за домашнее задание на 0,1 за незащищённую задачу; снижение складывается за каждое нарушение. Защита при необходимости проходит на семинаре в виде вопросов на понимание: условие, краевой случай, почему сделано так, а не иначе.

Экзамен

Экзамен на курсе — коллоквиум, разговор один на один с преподавателем на 8–10 минут. Проводится на сессионной неделе, предварительно в субботу, чтобы отвести на него весь день. Отвечать нужно без подготовки.

В билете три вопроса, каждый из своей лекции:

Вопрос О чём Баллов
1 сформулировать понятие 2
2 что выведет этот код и почему 4
3 почему язык устроен именно так или каким подходом решать задачу 4

Сумма — 10 баллов, она и есть оценка за экзамен по десятибалльной шкале. За каждый вопрос ставится полный балл, половина или ноль: сказать что происходит — половина, объяснить почему — полный балл.

Спрашивают только материал лекций. Того, что разбиралось на семинарах сверх лекции, в билетах нет. Домашние задачи пересказывать не нужно, но понимание, почему решение работает, проверяется прямо.

Пользоваться конспектами, ноутбуком и телефоном нельзя. Правила и примеры вопросов всех трёх видов лежат в репозитории курса, в папке exam.