В настоящее время я использую это:Чтение и перезаписать файл в Python
f = open(filename, 'r+')
text = f.read()
text = re.sub('foobar', 'bar', text)
f.seek(0)
f.write(text)
f.close()
Но проблема в том, что старый файл больше, чем новый файл. Таким образом, я получаю новый файл, который имеет часть старого файла в конце его.
Спасибо и хороший ответ. Я также хотел бы отметить здесь, что наилучшей практикой является открытие файла в 'с открытым (имя файла, 'r +') как f:' block, таким образом он автоматически закрывает файл в конце блока, даже если есть исключение , – mVChr