python【列表的sort方法和内置函数sorted】

list.sort方法和内置函数sorted

针对两种排序作了小小的对比,希望对您有所帮助!

a = [1, 8, 9, 7, 5, 6, 10]
a.sort()
print(a)

输出结果:
在这里插入图片描述


a = [1, 8, 9, 7, 5, 6, 10]
b = sorted(a)
print(b)

输出结果:
在这里插入图片描述


以上两种排序操作,从运行来看并没有什么不同,都是列表进行了排序操作,但是我们想要是他们排序的区别在哪里,所有我们对两种排序进行了打断点运行操作,如下图展示:

首先是【sort排序】
在这里插入图片描述
断点运行完成后,我们看到是,sort排序是在原数据基础上进行就地排序操作

其次是【sorted排序】
在这里插入图片描述
断点运行完成后,我们看到是,sorted排序是不在原数据基础上进行操作,而生成一个新的列表进行返回

最后,sort排序是只可对列表进行操作,而sorted可以对任何可迭代对象作为参数进行排序操作(元组、列表、字符串、字典、集合等),但最终返回的都是列表类型 。

字符串操作:

str_a = '854623'
str_b = sorted(str_a)
print(str_b)

字符串sorted过后展示效果:在这里插入图片描述


元组操作:

tuple_a = (8, 9, 1, 4, 50, 40)
tuple_b = sorted(tuple_a)
print(tuple_b)

元组sorted过后展示效果:
在这里插入图片描述


字典操作:

dict_a = {'a': 1, 'c': 6, 'b': 6}
dict_b = sorted(dict_a)
print(dict_b)

字典sorted过后展示效果:
在这里插入图片描述


集合操作:

set_a = {9, 5, 6, 7, 5, 8}
set_b = sorted(set_a)
print(set_b)

集合sorted过后展示效果:
在这里插入图片描述


在sort和sorted中都有一个reverse参数,这个参数的默认值是False,如果我们把默认值改为True时,被排序的序列里的元素会以降序输出

a = [9, 5, 6, 7, 5, 8]

a.sort(reverse=True)
print(a)

b = sorted(a, reverse=True)
print(b)

更改reverse值为True后运行完成的效果:
在这里插入图片描述


以上就是我的遇坑的总结,可能会解决你的问题,也可能解决不了你的问题,但还是希望对您有所帮助,感谢阅读!

一直都在努力变好中,希望您也是,加油!

在这里插入图片描述

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值