Python学习_我怎么能够对列表中的元素排序

班里来了几个新同学,我需要按照名字进行排序
1、我想了解一共来了几个同学啊,使用len()查看列表的长度

people=['zhangziyi','yangmi','tangyan','anglybaba']
count=len(people)
print(count)

输出:4
2、对列表进行排序,可以使用sort()和sorted()

  • 使用sort()进行不可复原型排序,排完后我再也不能查看排序之前的顺序了

    people=['zhangziyi','yangmi','tangyan','anglybaba']
    people.sort()
    print(people)

    输出:[‘anglybaba’, ‘tangyan’, ‘yangmi’, ‘zhangziyi’]

  • 使用sort(),我想进行倒序排列,增加reverse=True 参数

    people=['zhangziyi','yangmi','tangyan','anglybaba']
    people.sort(reverse=True)
    print(people)

    输出:[‘zhangziyi’, ‘yangmi’, ‘tangyan’, ‘anglybaba’]

  • 我想进行临时排序,排序使用完成后我还要恢复原来的顺序,使用sorted()

    people=['zhangziyi','yangmi','tangyan','anglybaba']
    print(sorted(people))      #输出排序后的结果
    print(people)            

    输出:
    [‘anglybaba’, ‘tangyan’, ‘yangmi’, ‘zhangziyi’]
    [‘zhangziyi’, ‘yangmi’, ‘tangyan’, ‘anglybaba’]
    我想进行临时性的逆序排序,使用sorted(),并添加reverse=True参数

#突然发现做倒序排序时上边的例子太不明显了,我们修改一下名字
people=['shangziyi','yangmi','tangyan','anglybaba']
print(sorted(people,reverse=True))  #输出排序后的结果
print(people)

输出:
[‘yangmi’, ‘tangyan’, ‘shangziyi’, ‘anglybaba’]
[‘shangziyi’, ‘yangmi’, ‘tangyan’, ‘anglybaba’]
3、我想把列表倒着打出来,可以使用reverse(),是不是很奇怪,前边要排序倒序的时候用到了reverse=True

people=['shangziyi','yangmi','tangyan','anglybaba']
people.reverse()
print(people)

输出:
[‘anglybaba’, ‘tangyan’, ‘yangmi’, ‘shangziyi’]

注意:
sort()和reverse()本身是没有返回值的 (我是这么理解的)
sorted()是有返回值的,使用它时,返回值和原列表都可以使用

练习
想出5种你喜欢吃的水果,避免按照顺序排列,写入列表,并使用各种排序进行验证

fruits=['banana','apple','lemon','peach','cantaloupe']
#按照原始顺序打印列表
print(fruits)
#使用sorted()按照字母排列顺序打印列表,并验证原列表顺序未变
print(sorted(fruits))
print(fruits)
#使用sorted()按照字母倒序排列打印列表,并验证原列表顺序未变
print(sorted(fruits,reverse=True))
print(fruits)
#按照原列表相反的顺序打印列表,并验证原列表顺序变了
fruits.reverse()
print(fruits)
#恢复fruits的原始顺序
fruits.reverse()
print(fruits)
#使用sort()按照字母正序排列,并验证原始顺序改变了
fruits.sort()
print(fruits)
#使用sort()按照字母倒序排列,并验证原始顺序改变了
fruits.sort(reverse=True)
print(fruits)

输出:
[‘banana’, ‘apple’, ‘lemon’, ‘peach’, ‘cantaloupe’]
[‘apple’, ‘banana’, ‘cantaloupe’, ‘lemon’, ‘peach’]
[‘banana’, ‘apple’, ‘lemon’, ‘peach’, ‘cantaloupe’]
[‘peach’, ‘lemon’, ‘cantaloupe’, ‘banana’, ‘apple’]
[‘banana’, ‘apple’, ‘lemon’, ‘peach’, ‘cantaloupe’]
[‘cantaloupe’, ‘peach’, ‘lemon’, ‘apple’, ‘banana’]
[‘banana’, ‘apple’, ‘lemon’, ‘peach’, ‘cantaloupe’]
[‘apple’, ‘banana’, ‘cantaloupe’, ‘lemon’, ‘peach’]
[‘peach’, ‘lemon’, ‘cantaloupe’, ‘banana’, ‘apple’]
总结:
好吧,这节的学习到此结束,主要学习了列表的元素排序方法想要永久排序就使用sort(),想要临时排序就使用sorted(),想要知道列表的长度就使用len(),想要按照原顺序的倒序排列可以使用reverse();sort()、sorted()也可以添加reverse=True参数的方式在排序的基础上进行倒序排序

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值