Sorting associative arrays in Python
本问题已经有最佳答案,请猛点这里访问。
在Python中,关联数组如何按键排序?
我有以下结构:
1 2 3 4 5 | people = [ {'name' : 'Bob', 'number' : '123'}, {'name' : 'Bill', 'number' : '234'}, {'name' : 'Dave', 'number' : '567'}, ] |
我想按名字排序。是否有内置函数来执行此操作?
使用
1 | sorted(people, key=lambda dct: dct['name']) |
有一个很好的分类方法可以解释这是如何工作的。
1 2 3 4 5 6 7 8 9 | >>> people = [ {'name' : 'Bob', 'number' : '123'}, {'name' : 'Bill', 'number' : '234'}, {'name' : 'Dave', 'number' : '567'}, ] >>> sorted(people, key=lambda dct: dct['name']) [{'name': 'Bill', 'number': '234'}, {'name': 'Bob', 'number': '123'}, {'name': 'Dave', 'number': '567'}] |
或者,您可以使用
1 2 | import operator sorted(people, key=operator.itemgetter('name')) |
使用