2016-07-03 2 views
5

Я знаю, что вы можете использовать c = cycle(['a', 'b', 'c']) для циклического перехода между элементами с помощью c.next(), но есть ли он, чтобы получить текущий элемент итератора?Получение текущего элемента цикла цикла itertools python

например, если c.next() возвращен 'c', это означает, что итератор был на 'b' раньше. Есть ли способ получить 'b' без использования next()?

+1

Удовольствие: попробуйте 'print list (c)' и посмотреть, что произойдет. –

+1

ха-ха никогда не уходит! – Algorithmatic

ответ

2

Итераторы/генераторы не имеют возможности получить текущее значение. Вы должны либо сохранить ссылку на него, либо создать некоторую оболочку, которая держится за нее.