Лекции:
Дата | Темы | Файлы | Задание |
---|---|---|---|
Семестр 1 | |||
08.09.2022 | Введение Переменные Типы данных: числа, строки, элементарные операции Функция print() |
Возраст в днях | |
15.09.2022 | Списки Булевы значения и логические операторы Оператор if Функции len(), sum(), min(), max() |
Возраст в днях (с високосностью) | |
22.09.2022 | Оператор вхождения Цикл for Инструменты для циклов: функции range(), enumerate(), zip() Цикл while |
Возраст в днях (с високосностью) II | |
29.09.2022 | Порядок выполнения (control flow): break, continue, sys.exit() | Валидность автомобильного номера | |
06.10.2022 | Работа с текстовыми файлами: чтение, запись, создание Escape sequences: \t, \n, \r Кодировки: cp1251, utf-8 Методы строк: split(), rsplit(), strip(), rstrip(), lstrip(), join() "Сырые" строки (raw strings), f-строки |
test.txt d34_s07_maps.txt |
Разбиение текстового файла на части |
13.10.2022 | Тернарный оператор Списковое включение (генераторы списков, list comprehension) Функции all() и any() Функция isinstance() |
Операции с матрицами | |
20.10.2022 | Кортежи (tuple) Упаковка и распаковка (packing and unpacking) Множества (set) Функция reduce() |
numbers.txt | Множества и кортежи: файл с числами |
27.10.2022 | Словари (dict) | d34_s07_maps.txt | Частотные словари |
03.11.2022 | Сравнимость Сортировка: функция sorted() и метод sort() Аргументы reverse и key lambda-функции |
d07_s02_maps_tempo.txt | Сортировка таблицы |
10.11.2022 | Функции I: аргументы функций, return | Реализация функции argmax в четырёх вариантах | |
17.11.2022 | Функции II: возвращение нескольких значений Позиционные и именованные аргументы Изменяемые объекты как аргументы Поверхностное и глубокое копирование |
Операции с матрицами II: Function Boogaloo | |
24.11.2022 | Функция main() import Докстринги |
print_nums.py print_nums2.py print_nums3.py |
Операции с матрицами III: Revolution |
01.12.2022 | Отладка и тестирование программы try/except/else/finally raise assert |
Операции с матрицами IV: Exceptionally Good | |
08.12.2022 | Итераторы Функции map() и filter() Модуль itertools |
fpt.txt | Подсчёт сочетаний букв |
15.12.2022 | Работа с файловыми системами | texts.zip | Подсчёт сочетаний букв II |
22.12.2022 | Модули collections и random | Задание на каникулы: рассказ про встроенный модуль Python на выбор | |
Семестр 2 | |||
13.02.2023 | Вычисление вероятностей последовательностей слов I | Вычисление вероятностей последовательностей слов в произвольном тексте | |
20.02.2023 | Вычисление вероятностей последовательностей слов II | Генерация наиболее вероятных предложений | |
28.02.2023 | Регулярные выражения I: основной синтаксис | Определение автомобильного номера и номера телефона | |
07.03.2023 | Регулярные выражения II: функции re. Жадность операторов |
Обработка html-файла | |
14.03.2023 | Регулярные выражения III: группы. Lookahead и lookbehind |
Деление на слоги и добавление кавычек | |
21.03.2023 | Чтение и запись файлов .wav и .pcm/sbl |
cta0001.wav cta0001.sbl cta0001.seg_B2 output.seg_B2 |
Преобразование и деление файлов |
28.03.2023 | Чтение и запись файлов аннотации WaveAssistant (.seg) | cta0001.seg_B2 cta0001.seg |
Преобразование файлов .seg |
04.04.2023 | Установка сторонних библиотек: pip, PyCharm Чтение документации. Модуль tgt для работы с файлами аннотации Praat (.TextGrid) |
cta0001.TextGrid | Конвертация .seg <-> .TextGrid |
11.04.2023 | Работа со звуковыми файлами и файлами разметки I | cta0003.wav cta0003.seg_B1 |
Деление файла .wav на звуки по меткам |
25.04.2023 | Работа со звуковыми файлами и файлами разметки II | cta0003.seg_Y1 | Создание фонетической транскрипции по разметке |
02.05.2023 | Практика | ditto | |
... |
Устные опросы:
Дата | Темы | Ответы |
---|---|---|
Семестр 1 | ||
03.11.2022 | Запись в текстовый файл List comprehension |
ans_0311.txt |
10.11.2022 | Итерация по списку Сортировка Dictionary comprehension |
ans_1011.txt |
17.11.2022 | Dictionary comprehension Функции |
ans_1711.txt |
24.11.2022 | Функции Возвращение None Возвращение кортежа |
ans_2411.txt |
01.12.2022 | "Умножение" списка на число Поверхностное копирование Методы работы со строками |
ans_0112.txt |
08.12.2022 | Типы исключений Итерация по индексам и элементам |
ans_0812.txt |
15.12.2022 | List comprehension | ans_1512.txt |
22.12.2022 | Шифр Цезаря | caesar.py |
Семестр 2 | ||
20-28.02.2023 | Списки. Циклы | ans_2002.ipynb |
07.03.2023 | Регулярные выражения | ans_0703.txt |
14.03.2023 | Регулярные выражения | ans_1403.txt |
21.03.2023 | Регулярные выражения | ans_2103.ipynb |
28.03.2023 | Вывод текста на экран | TBA |
04.04.2023 | Расстояние Хэмминга | TBA |
11.04.2023 | Палиндромы и анаграммы | TBA |
25.04.2023 | Соотнесение последовательностей чисел | TBA |
02.05.2023 | Обработка последовательности чисел с помощью оконного метода | TBA |
Полезные ссылки:
Основы программирования на Python (курс НИУ ВШЭ)
LeetCode: банк задач по программированию
Разработка и реализация алгоритмов с использованием языка Python (третий курс)
Программирование лингвистических задач (четвёртый курс)
Среда разработки Visual Studio Code
Список дополнительной литературы: