import fileinput
import sys
def replaceAll(file,searchExp,replaceExp):
i=1
for line in fileinput.input(file, inplace=1):
if i==57:
if searchExp in line:
line = line.replace(searchExp,replaceExp)
sys.stdout.write(line)
i+=1
replaceAll("5MW_Platform_karbarge.DAT","22.0","23.0")
此代码正在运行,问题是文件中的其余行在执行后丢失。请任何人提出修改建议,以便除第57行外,文件的其余部分不受干扰?非常感谢
您的问题是您只将第57行写回文件,只需将sys.stdout.write移出
if i==57
即可写入每一行,但只替换57行这应该行得通
相关问题 更多 >
编程相关推荐