使用.iteritems()在for循环中查找字典的下一项

时间:2014-06-19 14:24:16

标签: python-2.7 dictionary iterator

是否可以在循环中的for循环中获取下一个iteritem

for x,y dict.iteritems()

我对x的下一项感兴趣而不向前移动迭代器。

在Python 2.7.x中

1 个答案:

答案 0 :(得分:4)

这或多或少与问题How to access previous/next element while for looping?Iterate a list as pair (current, next) in Python重复。

请注意,以下内容仅适用于第一个主题中的most upvoted answer,适合您的规范:

def iterate(iterable):
    iterator = iter(iterable)
    item = iterator.next()

    for next_item in iterator:
        yield item, next_item
        item = next_item

    yield item, None

用法:

d = {'a': 1, 'b': 2, 'c': 3}

for item, next_item in iterate(d.iteritems()):
    print item, '| next:', next_item

解决问题的原因是Markus Jarderot