对于字典,我想跟踪已解析的项目数。与下面显示的相比,有更好的方法吗?
count = 0
for key,value in my_dict.iteritems():
count += 1
print key,value, count
答案 0 :(得分:29)
您可以使用enumerate()
function:
for count, (key, value) in enumerate(my_dict.iteritems(), 1):
print key, value, count
enumerate()
有效地为你正在循环的迭代器添加一个计数。在上面的示例中,我告诉enumerate()
开始计算1
以匹配您的示例;默认值是从0开始。
演示:
>>> somedict = {'foo': 'bar', 42: 'Life, the Universe and Everything', 'monty': 'python'}
>>> for count, (key, value) in enumerate(somedict.iteritems(), 1):
... print key, value, count
...
42 Life, the Universe and Everything 1
foo bar 2
monty python 3