循环遍历文本文件并将每行动态保存到变量中

时间:2020-07-08 10:43:42

标签: python

我正在制作此脚本,该脚本将获取文本文件中的每一行并将其保存到变量中。

我从这里开始,但是我不知道如何实现对此循环...

f = open("time.txt", "r")
g = open("values.txt", "r")
time = f.read(1)
value = g.read(1)

变量的值取决于文本文件中的当前行。

  • time.txt数据是时间戳。样本:2020-05-29T05:00:00Z
  • values.txt数据为正数。样本:24

1 个答案:

答案 0 :(得分:1)

您可以循环执行文件并将行添加到列表中,然后对列表进行任何操作。 您可以在迭代文件行的同时完成工作(这取决于您的代码需求和任务)。:

逐行读取文件,然后通常使用上下文管理器读取文件。

从技术上讲,在Python中,迭代器是实现iterator protocol的对象,该对象由方法__iter__()__next__()组成。由于文件遵循迭代器协议,因此可以使用for循环读取它们:

lines=[]
with open (fileName,'r') as fP:
    for line in fp:
        lines.append(line)
        #...............................
        # or do the work on this line! #
        #...............................

您可以使用方法read()。返回文本文件的行列表:

lines=[]
with open (fileName,'r') as fP:
    lines=fp.read()

无需调用close()。退出with块后,上下文管理器将处理该文件。

您可以遍历列表并将其附加到新的dict上,也可以根据需要进行操作:

for each_line in lines:
    #do my work on line here.