【python】如何替换文件中的某一行
我需要实现这样一个功能:在某个文件中将其中某一行替换掉,此行的关键字是唯一的。
我的思路有两种
第一种是读到此行,直接替换
第二种是将此文件写入到另一个文件中,在中途遇到关键字,则替换。
例如 源文件:c:\a.txt,目标,将"world"替换为"python"
第一种的代码是:
import reimport osf=open(r"c:\a.txt", "r+")for line in f.readlines(): if line.find("world") >= 0: s = line.replace("world", "python") f.writelines(s)
import reimport osoutput = []d_path = r"c:\a1.txt"f=open(r"c:\a.txt")for i in f.readlines(): output.append(i)f.close()for i in output: if i.find("world") >= 0: s = i.replace("world", "python") output.append(s) print output f=open(d_path, "w")f.writelines(output)f.close
open('2', 'w').write(re.sub(r'world', 'python', open('1').read()))