斯蒂芬大帝
我想应该是这样的。它基本上将内容写入一个新文件,并将旧文件替换为新文件:from tempfile import mkstempfrom shutil import movefrom os import fdopen, removedef replace(file_path, pattern, subst):
#Create temp file
fh, abs_path = mkstemp()
with fdopen(fh,'w') as new_file:
with open(file_path) as old_file:
for line in old_file:
new_file.write(line.replace(pattern, subst))
#Remove original file
remove(file_path)
#Move new file
move(abs_path, file_path)