使用另一个python fi修改/替换python文件中的一行

2024-09-24 02:16:19 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图从另一个python文件替换/修改python文件中的字符串的一部分。在

我想在其他PY中替换的行是:

a.setSystemFile('D:/test/f.xml')

我想用不同的xml路径替换此行的部分,即xml路径字符串:

示例:

^{pr2}$

我的代码看起来像:

with open('script.py') as f:  lines = f.read().splitlines()
with open('script.py', 'w') as f:

    for line in lines:
      if line.startswith('a.setSystemFile'):

        f.write(line.replace('D:/test/f.xml','C:/try/X.xml')

但是,这会使文件呈现为空,并且只写入C:/try/X.xml。是否有一种方法可以在保留原始内容的同时只替换上面示例中的XML路径字符串。在

任何帮助都将不胜感激。谢谢。在


Tags: 文件字符串pytest路径示例aswith
1条回答
网友
1楼 · 发布于 2024-09-24 02:16:19

如果行不是以文本开头的话,你就忘了做什么。在

for line in lines:
  if line.startswith('a.setSystemFile'):
    f.write(line.replace('D:/test/f.xml','C:/try/X.xml'))
  else:
    f.write(line)

另外,我是否可以建议对此使用sed?在

相关问题 更多 >