Python之sort()方法和sorted()函数的区别

类里面的叫做方法,类外面叫做函数

  • sort() 是Python列表的一个内置的排序方法,list.sort() 方法排序时直接修改原列表,返回None;方法sort() 对列表进行永久性排序
  • sorted() 是Python内置的一个排序函数,它会从一个迭代器返回一个排好序的新列表,需要接收,也可直接打印;函数 sorted() 对列表进行临时排序

sort() 只是列表的一个方法,只适用于列表,而sorted() 函数接受一切迭代器,返回一个有序的副本,并且类型总是列表。相比于 sort(),sorted() 使用的范围更为广泛,但是如果不需要保留原列表,sort更有效一点

=========sort()永久性排序,改变原列表============== 
li=['sfdf','dfs','fdsw','tre','yhgfth']
li.sort()
print(li)
['dfs', 'fdsw', 'sfdf', 'tre', 'yhgfth']

==========sorted()临时排序,不改变原列表===============
li=['sfdf','dfs','fdsw','tre','yhgfth']
print(sorted(li))
print(li)
['dfs', 'fdsw', 'sfdf', 'tre', 'yhgfth']
['sfdf', 'dfs', 'fdsw', 'tre', 'yhgfth']
#可以看到li没有改变

=================元组不能用sort()排序=================
li=(78,3,65,34,135)
li.sort()
AttributeError: 'tuple' object has no attribute 'sort'

===============sorted() 可以为元组排序================
li=(78,3,65,34,135)
print(sorted(li))
[3, 34, 65, 78, 135]
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值