目录
python sort()函数介绍
sort()函数是Python 列表的一个方法,是python的内置方法,sort()函数可以对列表进行就地排序。
sort()方法语法:
list.sort(cmp=None[, key=None, reverse=False])
参数
- [] -- 代表是可选参数
- cmp -- 可选参数, 如果指定了该参数会使用该参数的方法进行排序。
- key -- 主要是用来进行比较的元素,只有一个参数,具体的函数的参数就是取自于可迭代对象中,指定可迭代对象中的一个元素来进行排序。
- reverse -- 排序规则,reverse = True 降序, reverse = False 升序(默认)。
返回值
该方法没有返回值,但是会对列表的对象进行排序。
实例
简单使用
x = [8,9,0,7,4,5,1,2,3,6]
x.sort()
print(x)
输出结果
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
sort()降序排序
函数sort() 默认情况下 是升序排序,进行降序排序,需要用到函数reverse()
x = [8,9,0,7,4,5,1,2,3,6]
x.sort()
x.reverse()
print(x)
输出结果
[9, 8, 7, 6, 5, 4, 3, 2, 1, 0]
key参数
可选。
指定排序标准的函数。key接受的是一个只有一个形参的函数
key接受的函数返回值,表示此元素的权值,sort将按照权值大小进行排序
x = [8,9,0,7,4,5,1,2,3,6]
def size(a):
x=10-int(a)
return x
x.sort(key=size)
print(x)
输出结果
[9, 8, 7, 6, 5, 4, 3, 2, 1, 0]
reverse参数
可选。
reverse接受的是一个bool类型的值 (Ture or False),表示排列顺序。
reverse=False 将对列表进行升序排序(默认)。
reverse=True 将对列表进行降序排序。
x = [8,9,0,7,4,5,1,2,3,6]
x.sort(reverse=True)
print(x)
x.sort(reverse=False)
print(x)
输出结果
[9, 8, 7, 6, 5, 4, 3, 2, 1, 0]
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
sort()和sorted()的区别
sorted()介绍文章:Python3 sorted() 函数 - 对所有可迭代的对象进行排序操作。
sort 是应用在 list 上的方法,sorted 可以对所有可迭代的对象进行排序操作。
list 的 sort 方法返回的是对已经存在的列表进行操作,而内建函数 sorted 方法返回的是一个新的 list,而不是在原来的基础上进行的操作。
实例
函数sort()修改序列,不返回任何值
x = [8,9,0,7,4,5,1,2,3,6]
y = x.sort()
print(y)
print(x)
输出结果
None
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
sorted()函数 返回一个排序列表,不改变原有序列
x = [8,9,0,7,4,5,1,2,3,6]
y = sorted(x)
print(y)
print(x)
输出结果
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
[8, 9, 0, 7, 4, 5, 1, 2, 3, 6]