在文本文件中有这一行
initial_mass = unknown_int
我想用
替换行initial_mass = known_int
顾名思义,我不知道初始值,但我想用已知值替换它的任何内容。如何使用 Python 搜索以“initial_mass”开头的行,然后将整行替换为“initial_mass = known_int”?
我的思路是
import fileinput
for line in fileinput.FileInput(filename, inplace=True):
line=line.replace(old, new)
print(line),
如何将 old
设置为包含 initial_mass = uknown_int
的行?
我看过 startswith()
但我不知道如何使用它来获得我想要的东西。我也试过正则表达式,发现它完全令人困惑。
文件不是特别大,但我会需要多次迭代这个过程。
最佳答案
你不需要知道什么是old
;只需重新定义整行:
import sys
import fileinput
for line in fileinput.input([filename], inplace=True):
if line.strip().startswith('initial_mass = '):
line = 'initial_mass = 123\n'
sys.stdout.write(line)
关于Python:替换文件中以模式开头的行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25749252/