from collections import namedtuple
average_grades={'mitra':19,'sara':20,'mayk':19.5,'jorj':19}
# Make the dict more specific
name_grade = namedtuple('name_grade', 'name, grade')
average_mapper = map(lambda key : name_grade(key, average_grades[key]), average_grades)
# Sort enter code here the dict by the grade then the name
sorted_dict = {key : value for key, value in sorted(average_mapper, key=lambda info: (info.grade, info.name))}
print(sorted_dict)
# {'jorj': 19, 'mitra': 19, 'mayk': 19.5, 'sara': 20}
2条答案
按热度按时间2ekbmq321#
Sorted函数接受一个可以排序的键,第一层是升序的值,因此x[1],第二层是升序的键,因此x[0]。如果你必须按降序对键进行排序,那么你应该写-x[0]。
pcww981p2#
您可以按以下方式排序: