2016-04-26 56 views
2

如果我們有以下代碼:如何調用__next__的迭代器n次蟒蛇

s = "stackoverflow" 
si = iter(s) 
si.__next__() # Would return s 
si.__next__() # Would return t 
si.__next__() # Would return a 

有沒有使用循環我可以"a"一起__next__()單個呼叫的方式。所以基本上我想打三次電話__next__()並獲得第三個值。 (請注意,必須使用迭代器,我不能只用切片)

謝謝

回答

5

您可以使用itertools.islice

>>> from itertools import islice 
>>> si = iter(s) 
>>> next(islice(si, 2, 3)) 
'a'