Я использую Python 3.2 и модуль configparser и сталкиваюсь с некоторыми проблемами. Мне нужно прочитать, а затем записать в файл конфигурации. Я попробовал следующее:
import configparser
data = open('data.txt', 'r+')
a = configparser.ConfigParser()
a.read_file(data)
a['example']['test'] = 'red'
a.write(data)
Проблема в том, что когда я открываю данные с помощью r +, когда я пишу в них, новая информация добавляется; оно не перезаписывает старое.
import configparser
data = open('data.txt', 'r')
a = configparser.ConfigParser()
a.read_file(data)
a['example']['test'] = 'red'
data = open('data.txt', 'w')
a.write(data)
Этот способ ^ кажется небезопасным, поскольку его открытие с помощью w очищает файл. Что делать, если программа падает до того, как успеет написать? Файл конфигурации потерян. Это единственное решение для резервного копирования перед открытием с помощью w?
Edit:
Следующее также возможно, но безопасно ли это?
a.write(open('data.txt','w'))