use*_*577 1 dictionary iterator python-2.7
是否可以在for循环中获取下一个迭代
for x,y dict.iteritems()
我对x的下一项感兴趣,而没有向前移动迭代器。
在Python 2.7.x中
这或多或少是以下问题的重复:如何在循环时访问上一个/下一个元素?并在Python中将列表成对循环(当前,下一个)。
请注意,以下内容仅是第一个线程中最受好评的答案的改编,适合您的规范:
def iterate(iterable):
iterator = iter(iterable)
item = iterator.next()
for next_item in iterator:
yield item, next_item
item = next_item
yield item, None
Run Code Online (Sandbox Code Playgroud)
用法:
d = {'a': 1, 'b': 2, 'c': 3}
for item, next_item in iterate(d.iteritems()):
print item, '| next:', next_item
Run Code Online (Sandbox Code Playgroud)
信贷由于马库斯Jarderot的解决方案。