python内置排序函数
python排序内置的排序函数有sort()和sorted
-
list.sort():该函数的三个参数和分别是cmp(比较函数)、key(比较的关键字)、reverse(排序结果是否反转),该函数只适用于列表,而不是任意可迭代对象
-
sorted():该函数第一个对象是一个可迭代对象,后面三个参数分别是cmp(比较函数)、key(比较的关键字)、reverse(排序结果是否反转)
-
sort排序案例
l = [2, 4, 6, 4, 7]
l.sort()
print(l)
结果:[2,4,4,6,7]
p = [
{
"name": "zhangsan",
"age": 12,
},
{
"name": "lisi",
"age": 15,
},
{
"name": "wanger",
"age": 13,
},
{
"name": "mazi",
"age": 16,
},
{
"name": "lili",
"age": 14,
}
]
# 根据age进行排序,适用key参数,指定以字典的key age进行排序
p.sort(key=lambda x: x['age'])
print(p)
# 结果
[{'name': 'zhangsan', 'age': 12}, {'name': 'wanger', 'age': 13}, {'name': 'lili', 'age': 14}, {'name': 'lisi', 'age': 15}, {'name': 'mazi', 'age': 16}]
- sorted()和list.sort()方法类似,但sorted()可以应用于任意的可迭代对象,所以应用范围不list.sort()广泛,可以应用于字符串、元组、列表、字典等可迭代对象