用Python替换文档中的行
我有以下文件,我想替换#sys.path.insert(0,os.path.abspath('.')) 使用sys.path.extend(['path1'、'path2']) 但是,以下代码不会更改该行用Python替换文档中的行,python,Python,我有以下文件,我想替换#sys.path.insert(0,os.path.abspath('.')) 使用sys.path.extend(['path1'、'path2']) 但是,以下代码不会更改该行 with open(os.path.join(conf_py_path, "conf.py"), 'r+') as cnfpy: for line in cnfpy: line.replace("#sys.path.insert(0, os.path.abspath('
with open(os.path.join(conf_py_path, "conf.py"), 'r+') as cnfpy:
for line in cnfpy:
line.replace("#sys.path.insert(0, os.path.abspath('.')))",
"sys.path.extend(%s)\n" %src_paths)
cnfpy.write(line)
如何替换该行?尝试更改文件中的字符串:
import fileinput
for line in fileinput.input(filename, inplace=True):
print(line.replace(string_to_replace, new_string))
无需打开文件即可演示此问题。请努力创建一个最小的例子。我们这里有两个问题:1。不保存
行的结果。替换()
,2。未正确读取和写入在r+
模式下打开的文件。谢谢,我必须执行打印行。替换(…,…),@user977828,对。我已经编辑了答案。
import fileinput
for line in fileinput.input(filename, inplace=True):
print(line.replace(string_to_replace, new_string))