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

来源:互联网 发布:linux运维属于哪个行业 编辑:程序博客网 时间:2024/06/06 08:23

班里来了几个新同学,我需要按照名字进行排序
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参数的方式在排序的基础上进行倒序排序

原创粉丝点击