Python:如何在接收用户输入后从文件中打印行

时间:2017-11-12 23:01:47

标签: python python-3.x

承担我的编程新手。我正在尝试创建一个程序,它将从文件中打印特定行的行,等待用户输入,然后打印另一个特定块等。基本上,一个程序打印行[1,2和3],询问用户输入,然后打印行[4,5和6]等。

具体我只是指外部文本文件中的某些行

我根本不知道如何做到这一点,而且我只能真正打印文件中的特定行。

lines = []
for line in enumerate(open("mathsquiz.txt" , "r")):
    lines.append(line)
    targetlines = [4, 5, 10, 11, 16, 17, 22, 23]
    for line in lines:
        if line[0] not in targetlines:
            print(line[1])

1 个答案:

答案 0 :(得分:0)

未经测试,但请尝试:

targetlines = [4, 5, 10, 11, 16, 17, 22, 23]
with open("mathsquiz.txt", "r") as f_in:
    for n, line in enumerate(f_in):
       if n in targetlines:
           print(line)

同样,未经测试但应该有效:

while True:     
    s=input('enter lines separated by spaces:')     
    if s.strip()=='': break
    tgt=[int(e) for e in s.split()]
    print(tgt)
    with open("mathsquiz.txt", "r") as f_in:
        for n, line in enumerate(f_in):
            if n in tgt:
               print(line.rstrip())