1 对列表排序
x = [41, -68, 47, -87, 39, -46, 102, -77, 51]
print(sorted(x))
运行结果:
[-87, -77, -68, -46, 39, 41, 47, 51, 102]
...
x = [41, -68, 47, -87, 39, -46, 102, -77, 51]
print(sorted(x,reverse=True))
运行结果:
[102, 51, 47, 41, 39, -46, -68, -77, -87]
...
x = [41, -68, 47, -87, 39, -46, 102, -77, 51]
print(sorted(x,key=abs))
运行结果:
[39, 41, -46, 47, 51, -68, -77, -87, 102]
2 对字典排序
默认依据字典的key排序:
dict1 = {'语文': 90, '数学': 79, '英语': 82, '物理': 72, '化学': 95, '生物': 76}
print(sorted(dict1))
运行结果:
['化学', '数学', '物理', '生物', '英语', '语文']
默认排序,显示字典的键值对
dict1 = {'语文': 90, '数学': 79, '英语': 82, '物理': 72, '化学': 95, '生物': 76}
print(sorted(dict1.items()))
运行结果:
[('化学', 95), ('数学', 79), ('物理', 72), ('生物', 76), ('英语', 82), ('语文', 90)]
依据字典的value排序
def by_key(dt):
return dt[1]
dict1 = {'语文': 90, '数学': 79, '英语': 82, '物理': 72, '化学': 95, '生物': 76}
print(sorted(dict1.items(), key=by_key))
运行结果:
[('物理', 72), ('生物', 76), ('数学', 79), ('英语', 82), ('语文', 90), ('化学', 95)]
依据字典的value倒序排序
def by_key(dt):
return dt[1]
dict1 = {'语文': 90, '数学': 79, '英语': 82, '物理': 72, '化学': 95, '生物': 76}
print(sorted(dict1.items(), key=by_key,reverse=True))
运行结果:
[('化学', 95), ('语文', 90), ('英语', 82), ('数学', 79), ('生物', 76), ('物理', 72)]