50

如何从Python 中的dict获取键值元组列表?

4

5 回答 5

89

仅适用于 Python 2.x(感谢 Alex):

yourdict = {}
# ...
items = yourdict.items()

有关详细信息,请参阅http://docs.python.org/library/stdtypes.html#dict.items

仅适用于 Python 3.x(取自Alex 的回答):

yourdict = {}
# ...
items = list(yourdict.items())
于 2009-08-18T19:42:48.803 回答
9

对于元组列表:

my_dict.items()

但是,如果您所做的只是迭代项目,则通常最好使用dict.iteritems(),因为它一次只返回一个项目,而不是一次返回所有项目,因此内存效率更高:

for key,value in my_dict.iteritems():
     #do stuff
于 2009-08-18T19:45:09.937 回答
6

在 Python2.*thedict.items(),就像@Andrew 的回答一样。在 Python3.*中,list(thedict.items())(因为items只有一个可迭代的视图,而不是一个列表,如果你需要一个列表,你需要显式地调用list它)。

于 2009-08-18T19:45:45.413 回答
6

在 Python 中从dictto转换很容易。list三个例子:

d = {'a': 'Arthur', 'b': 'Belling'}

d.items() [('a', 'Arthur'), ('b', 'Belling')]

d.keys() ['a', 'b']

d.values() ['Arthur', 'Belling']

如前一个答案Converting Python Dictionary to List中所见。

于 2012-06-27T16:40:53.983 回答
-2

对于 Python > 2.5:

a = {'1' : 10, '2' : 20 }
list(a.itervalues())
于 2011-03-18T13:51:19.887 回答