鱼C论坛

 找回密码
 立即注册
查看: 2649|回复: 0

[学习笔记] python列表排序之sort(),sorted()和reverse()

[复制链接]
发表于 2021-5-17 22:45:13 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
sort()
正序
sort()可以按字母的顺序来对列表进行永久性排序(改变列表自身的排序):
list_1 = ['one', 'two', 'three', 'four', 'five']
print(list_1)

list_1.sort()
print(list_1)
现在list_1列表中有几个首字母相同的元素,那是怎么排序的呢?
['one', 'two', 'three', 'four', 'five']
['five', 'four', 'one', 'three', 'two']
我们可以看出,当首字母一样时,sort()会自动识别第二个字母的顺序来进行排序,以此类推
逆序
既然有正着来,我们当然也可以反着来排序,不然sort()后面的括号拿来好看的吗,哈哈哈
我们这里只需要向sor()方法传递参数reverse=True即可
list_1 = ['one', 'two', 'three', 'four', 'five']
print(list_1)

list_1.sort(reverse=True)
print(list_1)
同样的,这样操作对列表也是永久性的
['one', 'two', 'three', 'four', 'five']
['two', 'three', 'one', 'four', 'five']
sorted()
当我们需要保留原列表的排序顺序时,可以使用sorted(),如:
list_1 = ['one', 'two', 'three', 'four', 'five']
print(list_1)

print(sorted(list_1))

print(list_1)
我们首先打印出这个列表,然后使用sorted()进行排序打印,然后再次打印这个列表
['one', 'two', 'three', 'four', 'five']
['five', 'four', 'one', 'three', 'two']
['one', 'two', 'three', 'four', 'five']
注意!!!这里原列表的顺序并没有改变
如果我们需要逆序打印,操作如sort()的逆序打印
reverse()
要反转,注意!!!是反转打印列表,我们则用reverse()
list_1 = ['one', 'two', 'three', 'four', 'five']
print(list_1)

list_1.reverse()
print(list_1)
注意,方法reverse()不是按字母顺序相反来排序,只是单纯的反转列表中的元素顺序
并且是永久性修改顺序,但是连续使用两次此函数就可以恢复原理啊的排列顺序
['one', 'two', 'three', 'four', 'five']
['five', 'four', 'three', 'two', 'one']








想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-1-9 01:09

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表