Я попытался следующие:Python .txt редактирование пошло не так, текст пошел
def überschreiben(filename,vp, capital):
data_in=open(filename,"w")
data_out=open(filename)
vpsegment=False
for line in data_out:
if "\thistory" in line:
data_in.write(line+'\n\t\tvictory_points = { '+capital+' '+vp+' }\n')
if "\t\tvictory_points" in line:
vpsegment=True
if vpsegment==True:
if "}" in line:
data_in.write("")
vpsegment=False
else:
data_in.write("")
else:
data_in.write(line)
data_in.close()
data_out.close()
Он должен изменить существующий код:
Если история параметр упоминалось, линии должны быть добавлены.
Если victory_points параметров упоминается, линии должны быть удалены, но это может произойти в следующих двух формах:
victory_points={xxxxx x}
или
victory_points = {
9648 5
}
Я думаю, алгоритм правильный, но в итоге я получаю пустой .txt
Какая ошибка?
Спасибо, но что, если имя файла должно быть одинаковым из-за причин обработки? –
@ThorePingpank вы можете использовать os.remove() и os.rename(), чтобы удалить старый файл и переименовать новый. Я отредактировал свой ответ, чтобы это отразить. – fgalvao