使用Python动态读取.txt文件

时间:2013-05-04 18:35:14

标签: python file

我有一个文本文件,将根据用户在php

中选择的单选按钮进行填充

我正在读同一个文本文件,每当我发现添加了一个新行时,Python脚本就会打印出来。现在我只打印它。最后,我将根据.txt文件中的新记录在GSM调制解调器上发送一条消息。现在我只是打印它以确保我能识别出新记录。

这是我正在使用的代码。它工作得很好。

def main():
    flag = 0
    count = 0
    while flag == 0:
        f = open('test.txt', 'r')
        with open('test.txt') as f:
            for i, l in enumerate(f):
                pass
        nol = i + 1
        if count < nol:
            while count <= nol:
                f = open('test.txt', 'r')
                a = f.readlines(count)
                if count == 0:
                    print a[0]
                    count = count+2
                else:
                    print a[count-1]
                    count = count+1
if __name__ ==  '__main__':
    main()

我想知道是否有更好的方法来做到这一点。

此外,php将继续写入该文件。而python将继续阅读它。这会引起冲突吗?由于多个实例是开放的?

1 个答案:

答案 0 :(得分:1)

根据this回答,您可以使用watchdog包来监视文件中的更改。或者,您可以在Unix中使用fcntl定制solution

第一种解决方案具有跨平台的优势。