我无法为Python创建搜索和替换脚本

时间:2013-07-30 23:45:52

标签: python replace

我一直在努力做到这一点,但我对Python很陌生,并且无法弄清楚如何让它发挥作用。

我有这个:

import fileinput
for line in fileinput.input(['tooltips.txt'], inplace=True, backup="bak.txt"):
    line.replace("oldString1", "newString1")
    line.replace("oldString2", "newString2")

但它只删除了txt中的所有内容。

我做错了什么?

我尝试过print(line.replace(“oldString1”,“newString1”) 但它不会删除现有的单词。

正如我所说,我对此很陌生。 谢谢!

2 个答案:

答案 0 :(得分:0)

一种简单的方法是使用open函数和os模块:

import os
with open(tmp_file) as tmp:
    with open(my_file) as f:
        for line in f.readlines():
            tmp.write(line.replace("oldString1", "newString1").replace("oldString2", "newString2") + "\n")
os.remove(my_file)
os.rename(tmp_file, my_file)

答案 1 :(得分:0)

line.replace()不会修改line 返回修改过的字符串

import fileinput, sys

for line in fileinput.input(['tooltips.txt'], inplace=True, backup="bak.txt"):
    sys.stdout.write(line.replace("oldString1", "newString1"))