如何在没有递增的情况下获取迭代器当前指向的项目?

fak*_*ake 18 python iterator

有没有办法让python中的迭代器指向该项而不增加迭代器本身?例如,如何使用迭代器实现以下内容:

looking_for = iter(when_to_change_the_mode)
for l in listA:
    do_something(looking_for.current())
    if l == looking_for.current():
        next(looking_for)
Run Code Online (Sandbox Code Playgroud)

Ned*_*der 15

迭代器无法获得当前值.如果你想要它,请自己保留对它的引用,或者包装你的迭代器以便为你保留它.


Mar*_*Wit 9

looking_for = iter(when_to_change_the_mode)
current = next(looking_for)
for l in listA:
    do_something(current)
    if l == current:
        current = next(looking_for)
Run Code Online (Sandbox Code Playgroud)

问题:如果在迭代器结束时怎么办?该next函数允许使用默认参数.