Python之排序reverse、sort、sorted
排序也是在程序中经常⽤到的算法。⽆论使⽤冒泡排序还是快速排序,排序的核⼼是⽐较两个元素的⼤⼩。
如果是数字,我们可以直接⽐较,但如果是字符串或者两个dict呢?直接⽐较数学上的⼤⼩是没有意义的,因此,⽐较的过程必须通过函数抽象出来。
Python内置的sorted()函数就可以对list进⾏排序。
Python sorted() 函数
描述
sorted() 函数对所有可迭代的对象进⾏排序操作。
sort 与 sorted 区别:
sort 是应⽤在 list 上的⽅法,sorted 可以对所有可迭代的对象进⾏排序操作。
list 的 sort ⽅法返回的是对已经存在的列表进⾏操作,⽽内建函数 sorted ⽅法返回的是⼀个新的 list,⽽
不是在原来的基础上进⾏的操作。
语法
sorted 语法:
sorted(iterable[, cmp[, key[, reverse]]])
参数说明:
iterable -- 可迭代对象。
cmp -- ⽐较的函数,这个具有两个参数,参数的值都是从可迭代对象中取出,此函数必须遵守的规则为,⼤于则返回1,⼩于则返回-1,等于则返回0。
key -- 主要是⽤来进⾏⽐较的元素,只有⼀个参数,具体的函数的参数就是取⾃于可迭代对象中,指定可迭代对象中的⼀个元素来进⾏排序。
reverse -- 排序规则,reverse = True 降序, reverse = False 升序(默认)。
返回值
返回重新排序的列表。
Python List sort()⽅法
描述
sort() 函数⽤于对原列表进⾏排序,如果指定参数,则使⽤⽐较函数指定的⽐较函数。
快速排序python实现语法
sort()⽅法语法:
list.sort([func])
参数
func -- 可选参数, 如果指定了该参数会使⽤该参数的⽅法进⾏排序。
返回值
该⽅法没有返回值,但是会对列表的对象进⾏排序。
Python List reverse()⽅法
描述
reverse() 函数⽤于反向列表中元素。
语法
reverse()⽅法语法:
参数
NA。
返回值
该⽅法没有返回值,但是会对列表的元素进⾏反向排序。
三者之间的⼀些⽐较:
1、list.sort()和sorted()都能接受⼀个参数reverse(True or False)来表⽰升序或降序排序。
2、verse()和list.sort()都没有返回值,只有全局sorted()有返回值,返回的是⼀个重新排序的列表。
3、sorted()也是⼀个⾼阶函数。⽤sorted()排序的关键在于实现⼀个映射函数。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。