Глава 15 · Python и файлы

Мини-проект — знакомство с файлами

Дневник заметок, сохраняющийся между запусками программы, — и подведение итогов главы.

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

dnevnik_zametok.py
from pathlib import Path

fajl_zametok = Path("zametki.txt")

novaya_zametka = input("Новая заметка: ")

with fajl_zametok.open("a") as f:
    f.write(novaya_zametka + "\n")

print("Все заметки:")
with fajl_zametok.open("r") as f:
    for line in f:
        print("-", line.strip())
Почему дозапись, а не перезапись
Режим "a" добавляет заметку, не стирая предыдущие — именно так и должен вести себя настоящий дневник: каждый запуск программы добавляет новую запись, а не начинает всё заново.
★★ Самостоятельная задача
Нумерация заметок

Добавьте номер к каждой заметке при чтении — например, «1. Первая заметка», «2. Вторая заметка».

Итоги

Что мы узнали в этой главе

  • Файлы сохраняют данные между запусками программы — в отличие от обычных переменных.
  • with open(путь, режим) as file: — современный и безопасный способ работать с файлами, закрывающий их автоматически.
  • Режимы: "r" — чтение, "w" — запись с перезаписью, "a" — дозапись в конец.
  • Файл можно читать целиком (.read()), построчно (цикл for line in file) или списком строк (.readlines()).
  • pathlib.Path — современный способ работать с путями к файлам вместо голых строк.