枚举词典中的键?

时间:2012-04-10 05:34:46

标签: dictionary python-2.7

我有一本字典

Dict = {'ALice':1, 'in':2, 'Wonderland':3}

我可以找到返回键值的方法,但无法返回键名。

我希望Python逐步返回字典键名(for循环),例如:

Alice
in
Wonderland

3 个答案:

答案 0 :(得分:16)

您可以使用.keys()

for key in your_dict.keys():
  print key

或只是迭代字典:

for key in your_dict:
  print key

请注意,不会订购词典。您生成的密钥将以稍微随机的顺序出现:

['Wonderland', 'ALice', 'in']

如果您关心订单,解决方案是使用 订购的列表:

sort_of_dict = [('ALice', 1), ('in', 2), ('Wonderland', 3)]

for key, value in sort_of_dict:
  print key

现在你得到了你想要的结果:

>>> sort_of_dict = [('ALice', 1), ('in', 2), ('Wonderland', 3)]
>>> 
>>> for key, value in sort_of_dict:
...   print key
... 
ALice
in
Wonderland

答案 1 :(得分:1)

dict有一个keys()方法。

Dict.keys()将返回一个键列表,或者使用迭代器方法iterkeys()。

答案 2 :(得分:1)

def enumdict(listed):
    myDict = {}
    for i, x in enumerate(listed):
        myDict[x] = i

    return myDict

indexes = ['alpha', 'beta', 'zeta']

print enumdict(indexes)
  

打印:{'alpha':0,'beta':1,'zeta':2}

编辑:如果您想要订购dict,请使用ordereddict。