Работа с текстовыми файлами (txt): чтение и запись
Почему важно уметь работать с файлами? 📂
Файлы — это фундамент хранения данных в программировании. Без них невозможно представить ни один серьёзный проект! Текстовые файлы (txt) — простейший формат, с которого начинается работа с файлами в Python. Они используются для:
- Логов (записи событий программы)
- Конфигураций (настроек приложения)
- Хранения текстовых данных (статьи, заметки)
- Обмена информацией между программами
Как открыть файл в Python? 👐
Для работы с файлами используется встроенная функция open(). Она принимает два ключевых параметра:
file = open('файл.txt', 'режим')
Основные режимы работы:
'r'— чтение (read)'w'— запись (write, перезаписывает файл)'a'— добавление (append, дописывает в конец)'r+'— чтение и запись
Важно всегда закрывать файл после работы методом close():
file = open('example.txt', 'r')
# работа с файлом
file.close()
Но есть более удобный способ — конструкция with:
with open('example.txt', 'r') as file:
# работа с файлом
# файл автоматически закрывается
Чтение из файла: 3 способа 📖
1. read() — читает весь файл
with open('poem.txt', 'r') as file:
content = file.read()
print(content)
2. readline() — читает по одной строке
with open('poem.txt', 'r') as file:
first_line = file.readline()
second_line = file.readline()
print(first_line, second_line)
3. readlines() — возвращает список строк
with open('poem.txt', 'r') as file:
lines = file.readlines()
for line in lines:
print(line.strip()) # strip() убирает лишние пробелы и переносы
Запись в файл ✍️
Перезапись ('w')
with open('diary.txt', 'w') as file:
file.write("Сегодня я изучил работу с файлами в Python!\n")
file.write("Это очень полезный навык!")
⚠️ Важно: режим 'w' полностью перезаписывает файл! Если файла не существует — он создаётся.
Добавление ('a')
with open('diary.txt', 'a') as file:
file.write("\nЗавтра планирую изучить JSON!")
Практический пример: дневник настроения 😊😐😠
Давайте создадим простую программу, которая записывает ваше настроение каждый день:
from datetime import datetime
mood = input("Какое у вас сегодня настроение? ")
today = datetime.now().strftime("%d.%m.%Y")
with open('mood_diary.txt', 'a') as file:
file.write(f"{today}: {mood}\n")
print("Запись добавлена!")
Через неделю ваш файл mood_diary.txt может выглядеть так:
01.06.2023: Отличное
02.06.2023: Нормальное
03.06.2023: Устал
04.06.2023: Восторг!
...
Обработка ошибок: что, если файла нет? ❌
Всегда обрабатывайте возможные ошибки при работе с файлами:
try:
with open('missing_file.txt', 'r') as file:
print(file.read())
except FileNotFoundError:
print("Файл не найден! Создаю новый...")
with open('missing_file.txt', 'w') as file:
file.write("Новый файл создан!")
Продвинутый пример: анализ текста 📊
Давайте проанализируем текст в файле:
with open('book.txt', 'r') as file:
text = file.read()
words = text.split()
lines = text.count('\n') + 1 # +1 для последней строки
print(f"Статистика файла:")
print(f"Символов: {len(text)}")
print(f"Слов: {len(words)}")
print(f"Строк: {lines}")
Главные правила работы с файлами ✅
- Всегда закрывайте файлы (лучше использовать
with) - Проверяйте существование файлов перед чтением
- Используйте правильные режимы (
'r','w','a') - Для больших файлов читайте по частям (построчно)
- Делайте резервные копии перед перезаписью
Теперь вы готовы профессионально работать с текстовыми файлами в Python! 🎉 Попробуйте создать свой файловый менеджер или дневник — это отличная практика.