我正在尝试使用python读取文本文件。代码如下:
with open('data.txt') as f:
for line in f:
val=line.split()
它只是从文本文件中读取并确保它一次读取所有行。我想改变它的实现。假设它在一个函数中并且我已经打开了一个文件,那么每次调用函数时如何确保读取一个新行?
我已经阅读了seek
函数,每次调用函数时我可以用它来寻找新行吗?
答案 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)