这篇文章主要给大家介绍了Python学习小技巧之列表项排序的相关资料,文中介绍的非常详细,需要的朋友们可以参借鉴,下面跟着小编一起来学习学习吧。

本文介绍的是关于Python列表项排序的相关内容,分享出来供大家参考学习,下面来看看详细的介绍:

典型代码1:data_list = [6, 9, 1, 3, 0, 10, 100, -100]

data_list.sort()

print(data_list)

输出1:[-100, 0, 1, 3, 6, 9, 10, 100]

典型代码2:data_list = [6, 9, 1, 3, 0, 10, 100, -100]

data_list_copy = sorted(data_list)

print(data_list)

print(data_list_copy)

输出2:[6, 9, 1, 3, 0, 10, 100, -100]

[-100, 0, 1, 3, 6, 9, 10, 100]

应用场景

需要对列表中的项进行排序时使用。其中典型代码1是使用的列表自身的一个排序方法sort,这个方法自动按照升序排序,并且是原地排序,被排序的列表本身会被修改;典型代码2是调用的内置函数sort,会产生一个新的经过排序后的列表对象,原列表不受影响。这两种方式接受的参数几乎是一样的,他们都接受一个key参数,这个参数用来指定用对象的哪一部分为排序的依据:data_list = [(0, 100), (77, 34), (55, 97)]

data_list.sort(key=lambda x: x[1]) # 我们想要基于列表项的第二个数进行排序

print(data_list)

>>> [(77, 34), (55, 97), (0, 100)]

另外一个经常使用的参数是reverse,用来指定是否按照倒序排序,默认为False:data_list = [(0, 100), (77, 34), (55, 97)]

data_list.sort(key=lambda x: x[1], reverse=True) # 我们想要基于列表项的第二个数进行排序,并倒序

print(data_list)

>>> [(0, 100), (55, 97), (77, 34)]

带来的好处

1. 内置的排序方法,执行效率高,表达能力强,使代码更加紧凑,已读

2. 灵活的参数,用于指定排序的基准,比在类似于Java的语言中需要写一个comparator要方便很多

其它说明

1. sorted内置函数比列表的sort方法要适用范围更广泛,它可以对除列表之外的可迭代数据结构进行排序;

2. list内置的sort方法,属于原地排序,理论上能够节省内存的消耗;

总结

python 列表自动排序_Python学习小技巧之列表项排序的示例代码分享相关推荐

  1. python列表元组字典集合实验心得_python学习小总结(列表、元组、字典、集合、字符串)...

    ---恢复内容开始--- 一.列表(list) 1.添加 append():追加,在列表末尾添加元素. 列表名.append(添加的元素) extend():扩展,在列表末尾添加元素. 列表名.ext ...

  2. python实验二序列_python 学习笔记 二 序列, 列表, 元组, 字符串

    序列 序类是一个集合概念, Pthon包括六种内建序列: 列表, 元组, 字符串, Unicode字符串, buffer对象和xrange对象. 其中, 我们最长用的要数前三个. 通用序列操作 1. ...

  3. python淘宝抢购_Python 实现毫秒级淘宝抢购脚本的示例代码

    本篇文章主要介绍了Python 通过selenium实现毫秒级自动抢购的示例代码,通过扫码登录即可自动完成一系列操作,抢购时间精确至毫秒,可抢加购物车等待时间结算的,也可以抢聚划算的商品. 博主不提供 ...

  4. python 百度ocr安装_Python调用百度OCR实现图片文字识别的示例代码

    百度AI提供了一天50000次的免费文字识别额度,可以愉快的免费使用!下面直接上方法: 首先在百度AI创建一个应用,按照下图创建即可,创建后会获得如下: 创建后会获得如下信息: APP_ID = '* ...

  5. 初学python的小技巧_Python学习小技巧总结

    三元条件判断的3种实现方法 C语言中有三元条件表达式,如 a>b?a:b,Python中没有三目运算符(?:),但Python有它自己的方式来实现类似的功能.这里介绍3种方法: true_par ...

  6. python设计模式六大原则_学习设计模式 - 六大基本原则之迪米特法则(示例代码)...

    设计模式总共有六大基本原则,统称为SOLID (稳定)原则,分别是S-单一职责原则(Single Responsibility Principle), O-开闭原则(Open closed Princ ...

  7. python输入一个自然数、判断是否为素数_Python编程判断一个正整数是否为素数的示例代码分享...

    这篇文章主要介绍了Python编程判断一个正整数是否为素数的方法,涉及Python数学运算相关操作技巧,需要的朋友可以参考下 本文实例讲述了Python编程判断一个正整数是否为素数的方法.分享给大家供 ...

  8. 深度学习小技巧(二):如何保存和恢复scikit-learn训练的模型

    深度学习小技巧(一):如何保存和恢复TensorFlow训练的模型 在许多情况下,在使用scikit学习库的同时,你需要将预测模型保存到文件中,然后在使用它们的时候还原它们,以便重复使用以前的工作.比 ...

  9. 办公小技巧:excel怎么排序?

    excel表格我们不陌生吧,基本上工作什么的都会用到,很多excel的小技巧我们都不知道,当然如果是刚刚使用excel表格的小伙伴,这个小技巧一定要懂,先从基础做起吧!excel怎么排序?下面就让我们 ...

最新文章

  1. swift 基础学习之属性修饰符
  2. 成功解决ERROR: Could not install packages due to an EnvironmentError: [Errno 28] No space left on device
  3. jsp中的basePath和path (绝对路径 相对路径)
  4. swift解析html数据类型,ios-Swift:以标签或textVi显示HTML数据
  5. 利用Jqurey写一个输入内容增加并且可以删除,上下移动的标签
  6. ThihkPHP开发聚合支付系统源码 兼容所有易支付程序
  7. SpringBoot热加载实现与类加载浅谈
  8. JS基础_JS基础语法
  9. SPOOLing技术的再思考
  10. 公司内网与外网连通中的一些小问题(达内)
  11. C语言实现QQ刷屏,绝对实用
  12. protues仿真stm32 虚拟终端 数据不显示或者乱码 标准库
  13. 进制转换表与课程内容
  14. day5-ATM和购物车
  15. 逆向破解必备基础smail基础语法
  16. Word 2007文档结构图 大纲视图 目录默认折叠收缩
  17. pythonpath环境变量pth_.pth 文件扩展python环境路径
  18. .NET周报【11月第1期 2022-11-07】
  19. modis遥感影像数据批量下载(不限制网速的办法)
  20. Docker 镜像和容器

热门文章

  1. CKEditor 5 在线编辑 PDF
  2. oracle8 as sysdba,Oracle 8i 密码验证
  3. ncverilog脚本_基于脚本和test bench的ncverilog ASIC仿真实例分析
  4. 三刺激值计算公式_常用的车削、铣削和钻削计算公式,转走不谢
  5. vue3.0版本怎么修改服务器路径,@vue/cli 3.0 下通过npm命令切换不同服务器地址
  6. ubuntu16.04安装python3.6-dev超时_vitrualBox+ubuntu16.04安装python3.6最新教程及详细步骤...
  7. 在IntelliJ IDEA配置Tomcat
  8. Jquery第一章基础、过滤、层次选择器第二节1/2
  9. vsc写vue生成基本代码快捷键_Vscode添加用户代码实现基础模板快速调用
  10. android http 图片上传,Android okHttp上传图片