Python sorted()函数

时间:2022-04-26
本文章向大家介绍Python sorted()函数,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

Python sorted()函数

list内置一个方法sort(),可以实现对list内的元素做排序。 Python中提供sorted()高级函数进行排序,它也可以接收一个函数作为参数来补充定义排序规则,默认按值从小到大排列。 sort()和sorted()区别在于前者进作用于list,后者可以作用于所有可迭代对象。 形式:

sorted(iterable[, cmpfunc[, key[, reverse]]]) #[]表示可省略

1)cmpfunc指定一个定制的比较函数,这个函数接收两个参数(iterable的元素),如果第一个参数小于第二个参数,返回一个负数;如果第一个参数等于第二个参数,返回零;如果第一个参数大于第二个参数,返回一个正数。默认值为None。 2)key指定一个接收一个参数的函数,这个函数用于从每个元素中提取一个用于比较的关键字。默认值为None。 3)reverse是一个布尔值。如果设置为True,列表元素将被倒序排列。

用法示例:

>>> sorted([-2, 0, 5, -3, 22])
[-3, -2, 0, 5, 22]

>>> sorted([-2, 0, 5, -3, 22], key=abs)  #按绝对值从小到大排序
[0, -2, -3, 5, 22]

>>> sorted([-2, 0, 5, -3, 22], reverse = True)
[22, 5, 0, -2, -3]

>>> sorted([-2, 0, 5, -3, 22], key=abs, reverse='True')  #按绝对值从小到大逆序排序
[22, 5, -3, -2, 0]

#很明显,key和reverse都是默认参数,reverse默认为False
#还可以自定义参数来定义比较规则,写在funccmp位置