当前位置: 首页 > news >正文

Python之列表推导式和列表排序

Python中的列表推导式,是小编比较喜欢的一种,他能大大减少你的代码量来得到你想要的结果,下面说说列表中常用的几种推导式

列表排序

Python开发中会经常用到排序操作,这里提供两种方式供大家参考,对象的sort()方法和内置函数sorted()

1、使用列表对象的sort()函数

 对象的sort()方法用于对原列表排序,排序后源列表发生变化,列表的sort()方法语法格式如下:

listname.sort(key=None,reverse=False)

lisetname:要排序的列表

key:指定排序规则一个比较键(key=str.lower表示在排序时不区分大小写)

reverse:可选参数,如果将其指定为True,表示降序,False,为升序。默认为升序排列。

注:sort对中文排列支持不是很好,如果中文排序要自己实现sort方法

2、使用内置函数sorted()

内置函数sorted()的用法和sort基本一致,只是sorted排序后返回一个新列表,原列表的元素顺序不变。语法格式如下:

sorted(listname,key=None,reverse=False)

listname:要排序的列表

  key:指定排序规则一个比较键(key=str.lower表示在排序时不区分大小写)

  reverse:可选参数,如果将其指定为True,表示降序,False,为升序。默认为升序排列。

返回值:返回一个排序后的新列表

列表推导式

1、生成指定范围的数值列表

语法格式:

listname = [Expression for var in range]

listname:要生成的列表名称

Expression:表达式,用于计算新列表的元素

var:循环变量

range:采用range()函数生成的rang对象

例:randomnum=[random.randint(1,20)  for i in range(5)]

表示要生成一个含有5个随机数的列表,范围在1-20之间(包含1)

2、根据列表生成指定需求的列表

语法格式如下:

listname = [Expression fro var in list]

listname:生成的列表名称

Expression:表达式,用于计算新列表的元素

var:变量,值为后面列表的每个元素值

list:原列表

3、从列表中选择符合条件的元素生成新的列表

语法格式如下:

listname=[Expression for var in list if condition]

listname:生成新的列表

Exression:表达式,用于计算新列表的元素

var:变量,值为后面列表的每个元素值

list:原列表

condition:条件表达式,筛选条件

今天,关于列表推导式和列表序列就讲解到这,欢迎大家留言交流

欢迎大家关注我的公众号《coder练习生》

http://www.lryc.cn/news/11789.html

相关文章:

  • 力扣(LeetCode)240. 搜索二维矩阵 II(C++)
  • golang defer
  • 【Java】线程的死锁和释放锁
  • 如何使用断点续传上传大文件
  • 【图神经网络】图拉普拉斯滤波器如何实现全通、低通、高通滤波
  • python操作mysql数据库详解
  • netty群聊系统
  • Android 初代 K-V 存储框架 SharedPreferences,旧时代的余晖?
  • 在windows中使用tomcat搭建Jenkins
  • Linux系统
  • Mel Frequency Cepstral Coefficients (MFCCs)
  • 第七讲---贪心(上课)
  • 计算机如何思考与图灵完备
  • 惠普LaserJet M1005 MFP报错b2
  • 网络协议(TCP/IP)
  • 2023河南省第二届职业技能大赛郑州市选拔赛“网络安全” 项目比赛样题任务书
  • 6、流程控制
  • Linux中最基本常见命令总结
  • Python学习-----模块2.0(常用模块之时间模块-->time)
  • XXL-JOB分布式任务调度框架(二)-策略详解
  • JAVA练习54-最小栈
  • Redis-哨兵模式以及集群
  • 过滤器和监听器
  • Acwing 第 91 场周赛
  • JavaEE|套接字编程之UDP数据报
  • 如何使用Python创建一个自定义视频播放器
  • Elasticsearch进行优化-使用索引拆分(Split)和索引收缩(shrink )
  • 数论 —— 高斯记号(Gauss mark)
  • 【随笔】程序员眼中的 CPU,“没有灵魂的躯体”
  • 算法的时间复杂度