例如,如果在我的文本文件中,
爆炸,炸弹,鸭 吉姆,萨姆,丹尼尔
我希望在该文件中更改Daniel,这样就不会有任何其他因素受到影响。如何在不覆盖整个文件的情况下实现这一目标。
答案 0 :(得分:1)
您可以使用fileinput
import fileinput
with fileinput.FileInput(fileToSearch, inplace=True, backup='.bak') as file:
for line in file:
print(line.replace(textToSearch, textToReplace), end='')
#testToSearch:- Daniel
#textToReplace:- newName
或者如果您想让它更简单,只需从1个文件读取操作并将替换的内容写入第二个文件即可。然后覆盖它!
f1 = open('orgFile.txt', 'r')
f2 = open('orgFileRep.txt', 'w')
for line in f1:
f2.write(line.replace('textToSearch', 'textToReplace'), end=' ')
f1.close()
f2.close()
答案 1 :(得分:-1)
如果你想先得到最后一个元素你需要read()方法,它只是从文件中读取然后拆分它(逗号是分隔符)并使用slice [:-1]
答案 2 :(得分:-1)
f = open('name.txt','rb+')
for line in f:
line.replace('change','Daniel')
f.write(line)
f.close()