python不用sort排序_Python排序之sort&sorted

本文介绍了Python中sort和sorted函数的区别。sort()用于就地排序列表,改变原列表,而sorted()返回排序后的新列表,不改变原对象。详细讲解了sort()的升序和降序排列,并通过例子展示了sorted()函数的参数用法,包括cmp、key和reverse。
摘要由CSDN通过智能技术生成

cf33c355d985e5d43a6689d76c489d5c.png

1 首先,Python中sort与sorted的区别:

python中列表的内置函数sort()可以对列表中的元素进行排序,sort()函数是内置函数,会改变当前对象;

而全局性的sorted()函数则对所有可迭代的序列都是适用的,sorted()函数只会返回一个排序后的当前对象的副本,而不会改变当前对象。

2 sort()排序

2.1对列表进行简单排序
1 升序排列
a = [2,9,5,6,7,8]
a.sort()
print(a)
>>>[2, 5, 6, 7, 8, 9]
2 降序排列
a = [2,9,5,6,7,8]
#切记True的首字母是大写
a.sort(reverse=True)
print(a)
>>>[9, 8, 7, 6, 5, 2]
3 

3 sorted()排序

sorted(iterable, cmp=None, key=None, reverse=False)
iterable:是可迭代类型;
cmp:用于比较的函数,比较什么由key决定;
key:用列表元素的某个属性或函数进行作为关键字,有默认值,迭代集合中的一项;
reverse:排序规则. reverse = True  降序 或者 reverse = False 升序,有默认值。
返回值:是一个经过排序的可迭代类型,与iterable一样。
举例说明
3.1 
L = [('b',2),('a',1),('c',3),('d',4)]
L.sort(cmp=lambda x,y:cmp(x[1],y[1]))
L
>>>[('a', 1), ('b', 2), ('c', 3), ('d', 4)]
3.2
L = [('b',2),('a',1),('c',3),('d',4)]
>>>L.sort(key=lambda x:x[1])
>>>L
>>>[('a', 1), ('b', 2), ('c', 3), ('d', 4)]

未完待续。。。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值