【问题标题】:Python find word and replace line in file [duplicate]Python在文件中查找单词并替换行[重复]
【发布时间】:2014-09-03 07:14:01
【问题描述】:

我想搜索“香蕉”字并替换文件中的行

例如

test.txt

"test tes apple tt estsetse setse tse 香蕉测试 setset 橙色套 et setset 设置 etst"

搜索“香蕉”并换行

'setse tse 香蕉测试'->'我喜欢香蕉'

【问题讨论】:

  • 我猜这是你的作业;如果您不自己开始编写程序,那么您的课程已经不及格了!首先逐行读取文件并查看它打印出来的内容。使用“查找”类型的函数来查看该行是否包含“香蕉”等。

标签: python


【解决方案1】:

很简单……

请考虑这段代码...

fp = open('D://source.txt',"r+")

fg = open('D://target.txt',"w")

for line in fp:

    if line.find("banana") != -1:
        new_line = line.replace(line,"i like banana\n")
        fg.write(new_line)

    else:
        fg.write(line)

fg.close()

fp.close()

【讨论】:

  • 嘿,你能补充一下为什么这回答了这个问题,使它成为一个更好的答案,干杯
【解决方案2】:

你也可以使用这个例子:

lookup = 'banana'
with open(text.txt) as myFile:
  for num, line in enumerate(myFile, 1):
    if lookup in line:
       # do some work
       break # if the work is finished
    elif not lookup in line:
       # do smtg else
       pass
myFile.close()

【讨论】: