如何从txt文件中读取多个特定行(python)

时间:2016-05-09 09:29:07

标签: python-3.x

问题:

我正在尝试让我的程序从文本文件中读取多个特定行。我已经到了能够让程序读取多行的舞台,但我必须将它们一起添加,并且在打印时它们周围有'[],[]'。

这是我目前的代码:

import time
time.sleep(3)
one=1
while one==1:
    a = open("solution.txt","r").readlines()
    line = a[1].split()
    line2 = a[0].split()
    print(line+line2)
    one=0
    time.sleep(3)
exit()

旁注

我知道有类似的问题,尽管它们都非常复杂。我只想简单回答一下。我使用的是Python 3.5,不是菜鸟也不是专业人士。谢谢你的帮助!

1 个答案:

答案 0 :(得分:0)

如果你想从文件中读取行,你可以像这样使用for循环:

lines = []
for line in enumerate(open("solution.txt", "r")):
    lines.append(line)

这将创建一个包含行号(从零开始)的元组和该行的内容,它将对文件中的每一行执行此操作。 然后,它会将每个行号和行元组添加到名为lines的列表中。

如果你想要特定的行(例如第5行或第7行),你可以使用另一个循环来遍历行的内容。

targetlines = [5, 7]
for line in lines:
    if line[0] in targetlines:
        print(line[1])

这将在单独的行上打印第5行和第7行的内容。 请注意,它们的末尾仍然会有换行符,因此您可能需要使用.rstrip()打印它,这将删除换行符。