Глава 15 · Python и файлы
Создание новых файлов
Записываем данные на диск — и знакомимся с современным способом работать с путями.
Создание новых файлов
Чтобы записать что-то в файл, откройте его в режиме записи
"w" (write) — если файла не существует, Python создаст его сам;
если существует — его прежнее содержимое стирается уже в момент открытия,
ещё до первого write():
zapis_fajla.py
with open("rezultaty.txt", "w", encoding="utf-8") as file:
file.write("Уровень 1: 100 очков\n")
file.write("Уровень 2: 250 очков\n")
До
Уровень 1: 50 очков (старая игра)
open(..., "w")
→После открытия "w"
(пустой файл)
Работа с файлами
Три основных режима открытия файла:
"r"— чтение (read); ошибка, если файла не существует."w"— запись (write); создаёт новый файл или полностью стирает существующий сразу при открытии."a"— дозапись (append); добавляет текст в конец файла, не стирая то, что уже есть.
dozapis.py
with open("rezultaty.txt", "a", encoding="utf-8") as file:
file.write("Уровень 3: 400 очков\n")
"a" — это не «вставить куда захочу»
Дозапись всегда добавляет текст в конец файла. Она не умеет вставлять текст в середину или начало существующего содержимого.
Пути к файлам: строка или pathlib
Путь к файлу: обычная строка → pathlib
Классический подход
file_path = "data/rezultaty.txt"
with open(file_path, "r", encoding="utf-8") as f:
print(f.read())
Современный Python (pathlib)
from pathlib import Path
file_path = Path("data") / "rezultaty.txt"
print(file_path.exists()) # удобные методы прямо у пути
with file_path.open("r", encoding="utf-8") as f:
print(f.read())
Что использовать сегодня:
pathlib для путей к файлам — он появился в Python 3.4 и с тех пор считается предпочтительным способом. Строковые пути всё ещё повсеместно работают и встречаются в старом коде, но pathlib избавляет от ручной сборки пути через + и добавляет полезные методы вроде .exists() прямо у самого пути. Подробно разберём его в разделе 15.8.Практика: запись, дозапись и pathlib
Интерактивный ноутбук прямо в браузере — Python 3.14 через Pyodide, без установки