另一種選擇是使用csv
模塊(:
在你的案例中是一個列分隔符)。
假設有一個test.txt
文件,內容如下:
sample1:1
sample2:1
sample3:0
sample4:15
sample5:500
而且你需要增加每個值。這裏是你如何能做到這一點:
import csv
# read the file
with open('test.txt', 'r') as f:
reader = csv.reader(f, delimiter=":")
lines = [line for line in reader]
# write the file
with open('test.txt', 'w') as f:
writer = csv.writer(f, delimiter=":")
for line in lines:
# edit the data here
# e.g. increment each value
line[1] = int(line[1]) + 1
writer.writerows(lines)
的test.txt
內容現在是:
sample1:2
sample2:2
sample3:1
sample4:16
sample5:501
但是,不管怎樣,fileinput
聽起來更合乎邏輯的,你的情況來使用(編輯同一文件)。
希望有所幫助。
你想寫回文件或...? –
是的只是試圖用一個新號碼替換號碼真的 – user2117821