python sort函数_Python3中sort和sorted的区别

1. 区别一

sort()是列表中的方法,只能用于列表的排序sorted()是Python的内部函数,可以对其它序列进行排序,不一定非得是列表。sort()是在原列表的基础上进行排序,它不会产生新的列表。但sorted()则是产生一个新的列表。

例如列表L:

L=['C','python','JAVA','JS','PHP','C#','matlab','VB']

我们可以看到用sorted()排序后,L的列表没有变化,这说明sorted是在不改变原列表的情况下进行排序,而是产生一个新的列表

58535d984d594cb1b52359f0b5266255
1a36dbbbef334f76b52a0adeb178505e

下面我们看到sort()是改变了原列表

685c158104d34a67a272785191082d30

从上面两个例子我们可以看到,不管是sorted函数还是sort函数默认都是升序排列,那我们要降序排列该如何呢?

cbe3314064ab4093a1af51d71cee3474
e085dc531f2a4b0a9dc6f94056c9c034

这里我们用到了reverse这个参数,如果是True就表示是降序排列,默认是False,是不写的。

注意:在Python3.x中,不管是sort还是sorted,都只能对相同的数据类型进行排序,如果一个序列既有字符型,又有整数型,就会报错

2.sort和sorted中的key参数

它们一般默认为None,该参数用来指定自定义的排序函数,从而实现自己的排序规则

例如我们需要按字符串的长度进行排序,我们可以定义如下函数:

def Bylen(s):

return len(s)

045a9bf69ae1487f9faf5200403d326d
edb30061c94f46ed9e4b291baf4e83b2

上面两个例子是利用字符串长度,并且是降序的排列。

更多的排序方式可以通过自定义函数来实现。

也可以通过视频观看这两者之间的区别,链接如下:sort()和sorted()之间的区别

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值