2016-04-07 3 views

Antwort

4

Sie können itertools.islice verwenden, um Elemente aus einem iterierbaren Element auszuwählen. Beachten Sie, dass Iteratoren zwar iterierbar sind, aber nicht jeder Iterator ein Iterator mit einer next (oder __next__ in Python3) Methode ist.

>>> from itertools import islice 
>>> iterator = (x for x in ('a', 'b', 'c', 'd', 'e')) 
>>> tuple(islice(iterator, 3)) 
('a', 'b', 'c') 

Alternativ kann ein einfaches Verständnis:

>>> iterator = (x for x in ('a', 'b', 'c', 'd', 'e')) 
>>> tuple(next(iterator) for _ in range(3)) 
('a', 'b', 'c') 

Der Name _ hat keine besondere Bedeutung für den Interpreter (außerhalb von interaktiven Sitzungen, in denen es um das Ergebnis der zuletzt ausgeführten Anweisung speichert), wird aber bemerkt als der Name für eine Wegwerf-Variable von Python-Programmierern.

Verwandte Themen