一级字典排序
sort_x=sorted(x,key = lambda d: d[0] ,reverse=True) 对key 或者value 排序
list下的字典排序
- #包含字典dict的列表list的排序方法与dict的排序类似,如下:
- x = [{'name':'Homer', 'age':39}, {'name':'Bart', 'age':10}]
- sorted_x = sorted(x, key=operator.itemgetter('name'))
- print sorted_x
- #[{'age': 10, 'name': 'Bart'}, {'age': 39, 'name': 'Homer'}]
- sorted_x = sorted(x, key=operator.itemgetter('name'), reverse=True)
- print sorted_x
- #[{'age': 39, 'name': 'Homer'}, {'age': 10, 'name': 'Bart'}]
- sorted_x = sorted(x, key=lambda x : x['name'])
- print sorted_x
- #[{'age': 10, 'name': 'Bart'}, {'age': 39, 'name': 'Homer'}]
- sorted_x = sorted(x, key=lambda x : x['name'], reverse=True)
- print sorted_x
- #[{'age': 39, 'name': 'Homer'}, {'age': 10, 'name': 'Bart'}]
字典嵌套字典
- a = {"阳": {"math": "88", "chinese": "90", "english": "80"},"伟": {"math": "98", "chinese": "80", "english": "77"},\
- "楠": {"math": "85", "chinese": "94", "english": "30"},"泡": {"math": "66", "chinese": "77", "english": "74"},\
- "骥": {"math": "13", "chinese": "10", "english": "20"}}
- EnglishTop3 = sorted(a, key=lambda x:int(a[x]['english']),reverse = True)[0:3]
- for student in EnglishTop3:
- print student