1
我有一個整數列表,看起來像:文本替換不工作
I = [1020 1022 ....]
我需要打開被存儲爲.TXT一個XML文件,其中每個條目包括
Settings="Keys1029"/>
我需要迭代通過記錄替換列表條目中的每個數字「Keys1029」。 ,使而不是:
....Settings="Keys1029"/>
....Settings="Keys1029"/>
我們:
....Settings="Keys1020"/>
....Settings="Keys1022"/>
到目前爲止,我有:
import os
out = [1020,1022]
with open('c:\xml1.txt') as f1,open('c:\somefile.txt',"w") as f2:
#somefile.txt is temporary file
text = f1.read()
for item in out:
text = text.replace("Keys1029","Keys"+str(item),1)
f2.write(text)
#rename that temporary file to real file
os.rename('c:\somefile.txt','c:\xml1.txt')
這是替換:
....Settings="Keys1029"/>
....Settings="Keys1029"/>
與
....Settings="Keys1"/>
....Settings="Keys1"/>
任何想法我做錯了什麼?
謝謝你在前進,
這聽起來*幾乎*喜歡你忘了'str(item)',而是使用'text.replace('1029',1)'。您在這裏發佈的代碼實際上可行。 –
那麼你沒有迭代輸入文件。 – elyase
對不起,替換行實際上是:text = text.replace(「Keys1029」,「Keys」+ str(item),1)。我已經解決了上述問題。 – user61629