使用其他python文件修改/替换python文件中的一行

问题描述

|| 我正在尝试从另一个python文件替换/修改python文件中字符串的一部分。 我尝试在其他PY中替换的行是:
a.setSystemFile(\'D:/test/f.xml\')
我想用不同的xml路径替换此行的一部分,即xml路径字符串: 例:
a.setSystemFile(\'C:/try/X.xml\')
我的代码如下:
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路径字符串,如上例所示。 任何帮助,将不胜感激。谢谢。     

解决方法

        如果该行不是以该文本开头,则您忘记执行任何操作。
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?