1
什麼我的文字是在蟒蛇在一個文件中替換字符串
$ TITLE = XXXX YYYY
1 $字幕= XXXX YYYY ANSA
2 $ LABEL =第一個標籤
3 $移動分析
$ 4幅相輸出
$ 5子情況ID = 30411
我想要什麼
$ TITLE = XXXX YYYY
1 $ SUBTITLE = XXXX YYYY安莎
2 $ LABEL = 新標籤
3 $變位
4 $震級相輸出
$ 5子情形ID = 30411
的代碼我使用
import re
fo=open("test5.txt", "r+")
num_lines = sum(1 for line in open('test5.txt'))
count=1
while (count <= num_lines):
line1=fo.readline()
j= line1[17 : 72]
j1=re.findall('\d+', j)
k=map(int,j1)
if (k==[30411]):
count1=count-4
line2=fo.readlines()[count1]
r1=line2[10:72]
r11=str(r1)
r2="new label"
r22=str(r2)
newdata = line2.replace(r11,r22)
f1 = open("output7.txt",'a')
lines=f1.writelines(newdata)
else:
f1 = open("output7.txt",'a')
lines=f1.writelines(line1)
count=count+1
問題在於寫行。一旦搜索到30411,就必須返回3行,並將標籤更改爲新標籤。除標籤行之外,新的輸出文本應具有與以前相同的所有行。但它沒有正確書寫。誰能幫忙?
這行符號字面上是說'2 $ LABEL'還是'$ LABEL'代表文件中的任何內容? –
它很可能從字面上做。這是某種有限元輸出控制文件。但OP正在試圖從倫敦通過南非到紐約。 –
問題是,在搜索subase之後,它必須寫回一個新的標籤。我輸出的結果是寫在同一位置,即最後一行。我似乎不能想到一種不同的方法。 –