簡體   English   中英

從python第二行開始讀取文件

[英]Read a file starting from the second line in python

我使用python,但我不知道該怎么做。

我想閱讀文件中的許多行。 但是我必須從第二行開始閱讀。 所有文件都有不同的行,所以我不知道該怎么辦。

代碼示例是從第一行到第16行進行讀取。 但是我必須從第二行到行尾讀取文件。 謝謝!:)

with open('filename') as fin:
  for line in islice(fin, 1, 16):
    print line

您應該可以呼叫next並丟棄第一行:

with open('filename') as fin:
    next(fin) # cast into oblivion
    for line in fin:
        ... # do something

由於fin本身就是發電機,因此這很容易。

with open("filename", "rb") as fin:
    print(fin.readlines()[1:])

查看islice的文檔

itertools.islice(可迭代,停止)
itertools.islice(可迭代,開始,停止[,步驟])

創建一個迭代器,該迭代器返回可迭代對象中的選定元素。 如果start不為零,則跳過可迭代的元素,直到到達start為止。 之后,除非將步驟設置為高於一個步驟,否則將連續返回元素,這會導致項目被跳過。 如果stop為None,則迭代繼續進行直到迭代器耗盡為止 否則,它將停在指定位置。 與常規切片不同,islice()不支持用於開始,停止或步進的負值。 可用於從內部結構已經展平的數據中提取相關字段(例如,多行報告可能會在每三行列出一個名稱字段)。

我認為您可以告訴它從第二行開始並進行迭代直到結束。 例如

with open('filename') as fin:
    for line in islice(fin, 2, None):  # <--- change 1 to 2 and 16 to None
        print line

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM