Существует распространенная задача при работе с файлами в Python — добавление новой информации в существующий файл не перезаписывая его. Обычно, когда открывается файл на запись с помощью функции open()
, все существующее содержимое файла удаляется.
Например, если есть файл с именем example.txt
, который содержит строку «Hello, World!», и применить к нему следующий код:
file = open('example.txt', 'w') file.write('Python rules!') file.close()
После выполнения этого кода, содержимое файла example.txt
будет заменено на «Python rules!», и первоначальная строка «Hello, World!» будет утеряна.
Все это происходит из-за того, что режим 'w'
в функции open()
стирает все содержимое файла перед записью новых данных. Если кто-то хочет добавить информацию в файл, не удаляя существующие данные, нужно использовать режим 'a'
, который открывает файл на дозапись (append).
Вернемся к примеру выше и изменим его, используя режим 'a'
:
file = open('example.txt', 'a') file.write(' Python rules!') file.close()
Теперь, после выполнения этого кода, в файле example.txt
будет следующее содержимое: «Hello, World! Python rules!» Старая информация («Hello, World!») осталась на месте, а новая (» Python rules!») была добавлена в конец файла.
Таким образом, использование режима 'a'
при открытии файла позволяет дополнять его новой информацией, не теряя уже существующей.
Добавить комментарий