一、list.sort() 和 sorted() 都可以用来排序,两者的区别在于:
1. .sort() 只能用于 list 类型,sorted() 可以用于任意类型的可迭代对象排序;
2. .sort() 方法是在原始 list 上面修改列表的值,而 sorted() 不修改原始对象,它会开辟新的内存存储排序后的迭代对象。
(参考:Python3 sorted() 函数)
二、 对字典分别按照 key、value 排序
b = {'1': -10,
'0': 0,
'5': 50,
'3': 30,
'2': -20}
b_sorted_1 = sorted(b.items(), key=lambda l: l[1]) # 按照 value 排序
b_sorted_2 = sorted(b.items(), key=lambda l: l[0]) # 按照 key 排序
print(b_sorted_1)
print(b_sorted_2)
(参考:python的sorted函数对字典按key排序和按value排序)
(参考:python 对字典分别按照key值、value值进行排序)
三、sorted() 的用法
sorted(iterable, key, reverse)
# iterable:任意可迭代的对象
# key:是一个函数,用来选择参与比较的元素
# reverse:是否倒序,默认 False(即默认递增排序)
(参考:Python3 sorted() 函数)