从文件中读取:找到新行

时间:2014-04-02 04:22:35

标签: python file file-io

我正在尝试使用python读取文本文件。代码如下:

with open('data.txt') as f:
        for line in f:
            val=line.split()

它只是从文本文件中读取并确保它一次读取所有行。我想改变它的实现。假设它在一个函数中并且我已经打开了一个文件,那么每次调用函数时如何确保读取一个新行?

我已经阅读了seek函数,每次调用函数时我可以用它来寻找新行吗?

1 个答案:

答案 0 :(得分:1)

你可以使用像这样的生成器

def get_next_line(file_name):
    with open(file_name) as f:
        for line in f:
            yield line.strip()

你可以得到下一行,比如

for line in get_next_line("Input.txt"):
    print line

但是你想获得下一行,而不是循环,那么你可以明确地使用next函数,就像这样

my_file = get_next_line("Input.txt")
print next(my_file)
print next(my_file)