在python中搜索文本的文本

时间:2014-10-27 04:23:47

标签: python file python-2.7 file-read

我想在文件中搜索文本。我写了下面的LOC

with open(filename, 'r') as fileread:
    for line in fileread:
        if 'MyText' in line:
            print line

我的输入文件如下:

000001 Mytext Some text1
000002 asdsadsadsa
000003 safasfsaf
000004 Mytext Some text2

输出是:

000001 Mytext Some text1
000004 Mytext Some text2

当天晚些时候我再次运行相同的代码(meanwhil ethe输入文件添加了一些数据)

我的输入文件如下(添加了新数据):

000001 Mytext Some text1
000002 asdsadsadsa
000003 safasfsaf
000004 Mytext Some text2
.
.
.
.
.
.
010001 Mytext Some text3

我的输出是:

000001 Mytext Some text1
000004 Mytext Some text2
010001 Mytext Some text3

有没有办法<我可以修改代码,这样当我第二次运行程序时,它会忽略之前已经考虑过的值,并将下面的内容视为唯一的输出

010001 Mytext Some text3

2 个答案:

答案 0 :(得分:0)

让您的程序写入文件最近处理的行号。然后在你开始时跳到那一行。

答案 1 :(得分:0)

一种解决方案是使用编写器将数据记录在第二个文本文件中。通过这种方式,您可以在两次执行之间进行通信。

脚本启动时:

  • 加载那些现有的行'从新的测试文件到列表
  • 每次打印现有代码时,只需检查列表中是否有
  • 如果不是,则将其打印,然后将其添加到包含已打印值的第二个文本文件中

这也说明了在现有数据中插入的新数据。