在Python中的.txt文件打印特定行?(Print specific line in a .tx

2019-09-17 01:33发布

我有一个包含很多线路的.txt文件。 我想我的计划,问我想打印,然后打印到Python外壳什么线。 .txt文件被称为packages.txt。

Answer 1:

如果你不想在整个文件中读取的前期,你可以简单地重复,直到你找到的行号:

with open('packages.txt') as f:
    for i, line in enumerate(f, 1):
        if i == num:
            break
print line

或者你可以使用itertools.islice()切出期望的行(这是稍微哈克)

with open('packages.txt') as f:
    for line in itertools.islice(f, num+1, num+2):
        print line


Answer 2:

如果文件很大,使用readlines方法可能不是一个好主意,它可能是更好的一个读他们一个,直到你到达那里。

line_number = int(raw_input('Enter the line number: '))
with open('packages.txt') as f:
    i = 1
    for line in f:
        if i == line_number:
            break
        i += 1
    # line now holds the line 
    # (or is empty if the file is smaller than that number)
    print line

(更新以修复代码错误)



Answer 3:

如何引用使用行号文件的特定行? 如在java如果行号= i和文件存储f中则f(i)不会做。



文章来源: Print specific line in a .txt file in Python?