我使用
循环字典for key, value in mydict.items():
我想知道是否有一些pythonic方法也可以访问循环索引/迭代次数。访问索引,同时仍然可以访问键值信息。
for key, value, index in mydict.items():
这是因为我需要在循环第一次运行时检测到。所以在里面我可以有像
这样的东西if index != 1:
答案 0 :(得分:28)
您可以使用enumerate
功能,就像这样
for index, (key, value) in enumerate(mydict.items()):
print index, key, value
enumerate
函数给出项目的当前索引和实际项目本身。在这种情况下,第二个值实际上是键和值的元组。因此,在解包期间,我们明确将它们分组为元组。
答案 1 :(得分:1)
如果你只需要索引在第一次迭代时做一些特别的事情,你也可以使用.popitem()
key, val = mydict.popitem()
...
for key, val in mydict.items()
...
这会删除key, val
中的第一个mydict
对(但也许这对您来说不是问题?)
答案 2 :(得分:0)
if mydict:
iterdict = mydict.iteritems()
firstkey, firstvalue = next(iterdict)
# do something special with first item
for key, value in iterdict:
# do something with the rest