1. 程式人生 > >python-9-如何對迭代器做切片操作?

python-9-如何對迭代器做切片操作?

這裡寫圖片描述
檔案並不能直接進行切片操作。redlines()可以把每一行讀入到一個列表中。
弊端,readlines()方法會一次性的把檔案匯入到記憶體當中,如果檔案很大,那就尷尬了(記憶體不足)。
這裡寫圖片描述
然後 lines[100:300]. yeah,it’s work.

readlines(),檔案指標跑到檔案結尾處,使用f.seek(0)使指標回到結尾處

for line in f:
    pinr(line,)

解決方案:
這裡寫圖片描述

使用方法:
這裡寫圖片描述

from itertools import islice
for line in islice(f,100,300):
    print(line,)
起點開始:
islice(f,500
) 檔案末尾: islice(f,100,None)

這裡寫圖片描述
不支援負檢索,在沒有讀完檔案之前,我們是不知道檔案有多少行的。f經過迭代,被消耗哦,如下
這裡寫圖片描述
所以我們在使用islice()時,要重新宣告一下