[英]Print specific line in a .txt file in Python?
我有一個.txt文件,其中包含很多行。 我想讓我的程序問我要打印哪一行,然后將其打印到python shell中。 .txt文件稱為packages.txt。
如果您不想預先讀取整個文件,則可以簡單地進行迭代,直到找到行號:
with open('packages.txt') as f:
for i, line in enumerate(f, 1):
if i == num:
break
print line
或者,您可以使用itertools.islice()
切出所需的行(這有點hacky)
with open('packages.txt') as f:
for line in itertools.islice(f, num+1, num+2):
print line
如果文件很大,那么使用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
(已更新,以修復代碼中的錯誤)
如何使用行號引用文件的特定行? 如在Java中,如果行號= i並且文件存儲在f中,則f(i)會這樣做。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.