2017-02-22 54 views
1

我有一個應用程序,我使用三個發生器。 有多個設備將被分配其中的文件目錄。通過給定的計數限制發生器值,稍後返回保持發生器值

所以最高層,我有一個設備列表。迭代每個設備並在發生器中爲其分配目錄。在這個目錄中,生成器會在每個分配的目錄下重複一次文件。

這裏有兩個生成器,一個用於目錄級別,另一個用於文件級別。

所以我可以限制文件的數量應返回設備級別生成器。

就像說,在第一次迭代它應該給我們10個文件的循環方式。 後10個項目,它應該停止迭代,下一步再次獲取10個項目,並停止迭代等,直到它完成所有設備的所有目錄中的所有項目。

所有生成器都是用python編寫的,使用iter下一個方法。

是否可以限制在發電機中提取物品的數量?

+0

是的,你可以,它被稱爲分頁。 請參閱http://stackoverflow.com/a/2350904/7154688 – cgte

回答

1

itertools.islice應該爲你做。

根據您的迭代,您可以爲其提供startstop