Файлы дают данные, словари связывают ключ со значением, классы объединяют поля одного объекта. Это основной набор для любой программы обработки данных.
Что нужно знать
- Чтение: with open(имя, encoding='utf-8') as f: for line in f: — каждая строка с \n, чистить line.strip(). Запись: режим 'w' или 'a', f.write(текст + '\n').
- Текстовые файлы (txt, csv, py) — символы; двоичные (png, mp3, exe) — байты, режим 'rb'.
- Словарь: d[k] — значение (нет ключа — KeyError); d.get(k, 0) — безопасно; k in d — проверка; keys, values, items — перебор.
- Ключи — только неизменяемые: строки, числа, кортежи. Списки и словари ключами быть не могут.
- Частотный словарь: d[w] = d.get(w, 0) + 1; алфавитный вывод — for w in sorted(d).
- Класс: class Point: def __init__(self, x, y): self.x = x; объект p = Point(3, 4), поле p.x.
- Присваивание q = p — та же ссылка на объект, а не копия.
- Сортировка структур: sorted(data, key=lambda s: s[1], reverse=True); max/min тоже принимают key. Принципы ООП: инкапсуляция, наследование, полиморфизм.
Где чаще всего ошибаются
- Сравнивать строки из файла, не убрав символ перевода строки.
- Обращаться к d[k] до того, как ключ появился, вместо get.
- Забывать int() после split и сортировать баллы как строки.
- Забывать self в параметрах метода или писать x = x вместо self.x = x в конструкторе.
Проверить себя
По этой же теме курса есть проверочная работа из 15 заданий на 25 минут. Проверка автоматическая, результат виден сразу — и по работе целиком, и по каждой теме.
Алгоритмы и структуры данных · 9 класс · Файлы, словари, структуры и классы