当前位置:   article > 正文

python的列表list排序方法——sort、reverse用法及实例

python的列表list排序方法——sort、reverse用法及实例

目录

1.sort方法的用法和实例

(1)语法:list.sort(key,reverse)

(2)用法:用于对列表进行排序。

(3)实例

①简单的用法实例

②与lambda函数结合使用

2.reverse方法的用法和实例

(1)语法:list.reverse()

(2)用法:对列表进行反向排序。

(3)实例


1.sort方法的用法和实例

(1)语法:list.sort(key,reverse)

key:指定可迭代参数,并按照这些参数进行排序。用来进行比较。默认为优先比较第一个参数,第一个参数都相同再比较下一个参数大小。

reverse:排序类型,reverse=True为降序,reverse=False为升序。默认为升序排序。

(2)用法:用于对列表进行排序。

注意:这个方法无返回值,需要调看列表名才能查看值变化。

(3)实例

①简单的用法实例

  1. #sort
  2. #1默认参数 升序排序
  3. #实例①
  4. list1 = ['f','j','a']
  5. list1.sort() #无返回值
  6. print('list1升序之后为:',list1)
  7. #实例②
  8. list2 = [(2,3),(3,1),(4,3),(1,2),(2,1)]
  9. list2.sort()
  10. print('list2升序之后为:',list2)
  11. #2指定排序方式
  12. #实例③ 指定降序排序
  13. list3 = list2.copy()
  14. list3.sort(reverse = True)
  15. print('list3降序之后为:',list3)

输出结果为:

  1. list1升序之后为: ['a', 'f', 'j']
  2. list2升序之后为: [(1, 2), (2, 1), (2, 3), (3, 1), (4, 3)]
  3. list3降序之后为: [(4, 3), (3, 1), (2, 3), (2, 1), (1, 2)]

②与lambda函数结合使用

  1. #指定比较参数key进行排序
  2. #实例①
  3. list1 = [(2,3),(3,1),(4,3),(1,2),(2,1)]
  4. list1.sort(key = lambda x:x[1])
  5. print('list1按照第二个元素升序之后为:',list1)
  6. #实例②
  7. list2 = list1.copy()
  8. list2.sort(key = lambda x:x[1],reverse = True)
  9. print('list2按照第二个元素降序之后为:',list2)

输出结果为:

  1. list1按照第二个元素升序之后为: [(3, 1), (2, 1), (1, 2), (2, 3), (4, 3)]
  2. list2按照第二个元素降序之后为: [(2, 3), (4, 3), (1, 2), (3, 1), (2, 1)]

2.reverse方法的用法和实例

(1)语法:list.reverse()

(2)用法:对列表进行反向排序。

注意:无返回值,需要调用查看。

(3)实例

  1. #reverse
  2. list1 = ['f','j','a']
  3. list1.reverse() #无返回值
  4. print('list1反向排序之后为:',list1)
  5. list2 = [(2,3),(3,1),(4,3),(1,2),(2,1)]
  6. list2.reverse()
  7. print('list2反向排序之后为:',list2)

输出结果:

  1. list1反向排序之后为: ['a', 'j', 'f']
  2. list2反向排序之后为: [(2, 1), (1, 2), (4, 3), (3, 1), (2, 3)]

参考文章:

Python 列表(List) | 菜鸟教程 (runoob.com)

lambda函数的具体用法后续再详细写。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小丑西瓜9/article/detail/723005
推荐阅读
相关标签
  

闽ICP备14008679号