Я пишу скрипт, где мне нужно вставить строку между двумя строками. Например:Запись строки между строками
<tag1>
<subtag1>
Line 1 - with some text
Line 2 - with some text
</subtag> - #closing of subtag
**--> here i have (between closure of subtag and tag1) to insert a new tag (3 lines, opening tag, body and closing tag)**
</tag1>
Я пытаюсь использовать нижеприведенный код, но я ничего не могу записать в файле.
with open ('abc.xml' , "r+") as f:
for line in f:
if '</subtag>' in line:
f.write('\n text1\n')
f.write('text2')
f.write('text3')
Может кто-нибудь пожалуйста, дайте мне знать, где в приведенном выше коде я делаю это неправильно, или любая другая идея, чтобы написать код для вставки строки между двумя строками в файле в Python?
Самый простой способ сделать это - прочитать весь контент файла (например, как список строк), * манипулировать им в памяти *, а затем записать его обратно * поверх * предыдущего файла. Вставка в середину существующих файлов на месте нецелесообразна. – jonrsharpe
Привет, спасибо jonrsharpe за ваш вклад! , Он работал после манипулирования файлом в памяти и затем переписывал его на существующий файл. – nisha9t