如何按键对字典进行排序,并返回包含键和值的整个字典?

时间:2018-04-06 01:56:17

标签: python list dictionary

继承我所拥有的:

 dict = {'b':[456], 'a': [123]}

 sort_dict = sorted(dict.items(), key = str)
 return sort_dict

我的代码返回的内容:

[('a', [123]), ('b', [456])]

我需要它返回:

{'a':[123], 'b':[456]}

我知道我可以制作一个for循环或其他东西来创建一个新的dict,但还有其他/更简单的方法吗?谢谢!

1 个答案:

答案 0 :(得分:3)

from collections import OrderedDict

>>> OrderedDict(sorted(d.items(), key=str))
OrderedDict([('a', [123]), ('b', [456])])

对于Python 3.6+,这已足够(阅读评论以获取更多详细信息):

d = {'b':[456], 'a': [123]}

>>> dict(sorted(d.items(), key=str))
{'a': [123], 'b': [456]}

不要为变量dictliststr等命名,因为这些是built-in functions的名称。