3

与以下

代码

arr = [{"name":"joe", "hotdogs":5},{"name":"april", "hotdogs":5},{"name":"ryan", "hot dogs":8}]

如何在python中对数组的元素进行排序,例如字典按名称排序?

arr = [{"name":"april", "hotdogs":5},{"name":"joe", "hotdogs":5},{"name":"ryan", "hotdogs":8}]

如何应用一些函数对数组中的字典进行排序?

4

3 回答 3

5

像这样:

arr.sort(key=operator.itemgetter('name'))
于 2013-03-03T17:04:17.183 回答
1

看看下面的网页: http ://wiki.python.org/moin/HowTo/Sorting/

于 2013-03-03T17:39:02.023 回答
0

怎么样

>>> import collections
>>> collections.OrderedDict(april=5, joe=5, ryan=8)
OrderedDict([('april', 5), ('joe', 5), ('ryan', 8)]

或根据帝斯曼的评论

>>> collections.OrderedDict([('april', 5), ('joe', 5), ('ryan', 8)])
OrderedDict([('april', 5), ('joe', 5), ('ryan', 8)])
于 2013-03-03T17:29:24.073 回答