python 列表推导式使用详解


Posted in Python onAugust 29, 2019

所谓的列表推导式,就是指的轻量级循环创建列表。

基本使用方式

# 创建一个0-10的列表
a = [x for x in range(11)]
print(a)
"""
输出结果:
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
"""

上面的列表推导式等价于下面,只是代码非常简化。

a = []
for x in range(10):
  a.append(x)

在循环的过程中使用if

# 创建一个1-10之间偶数的列表
a = [x for x in range(11) if x%2==0]
"""
输出结果:
[0, 2, 4, 6, 8, 10]
"""

等价于

a = []
for x in range(11):
  if x%2 == 0:
    a.append(x)

2个for循环

a = [(x,y) for x in range(3) for y in range(3)]
print(a)
"""
输出结果:
[(0, 0), (0, 1), (0, 2), (1, 0), (1, 1), (1, 2), (2, 0), (2, 1), (2, 2)]
"""

等价于

a = []
for x in range(3):
  for y in range(3):
    a.append((x,y))

练习

生成一个[[1,2,3],[4,5,6]....]的列表最大值在100以内

首先考虑一下正常情况我们应该怎么写

a = []
for x in range(1,100,3):
  a.append([x,x+1,x+2])

然后再把它转换成列表推导式

a = [[x,x+1,x+2] for x in range(1,100,3)]

文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值

Python 相关文章推荐
python实现监控linux性能及进程消耗性能的方法
Jul 25 Python
python类继承用法实例分析
May 27 Python
Python如何实现文本转语音
Aug 08 Python
关于Python中异常(Exception)的汇总
Jan 18 Python
Python subprocess模块功能与常见用法实例详解
Jun 28 Python
Python实现的服务器示例小结【单进程、多进程、多线程、非阻塞式】
May 23 Python
PyQt5 QTable插入图片并动态更新的实例
Jun 18 Python
pytorch 在网络中添加可训练参数,修改预训练权重文件的方法
Aug 17 Python
pytorch 批次遍历数据集打印数据的例子
Dec 30 Python
python模拟预测一下新型冠状病毒肺炎的数据
Feb 01 Python
Python图像阈值化处理及算法比对实例解析
Jun 19 Python
Python如何在单元测试中给对象打补丁
Aug 03 Python
django 数据库连接模块解析及简单长连接改造方法
Aug 29 #Python
解决Django连接db遇到的问题
Aug 29 #Python
Python pandas实现excel工作表合并功能详解
Aug 29 #Python
python openCV获取人脸部分并存储功能
Aug 28 #Python
python lambda表达式在sort函数中的使用详解
Aug 28 #Python
python实现微信小程序用户登录、模板推送
Aug 28 #Python
使用Python脚本zabbix自定义key监控oracle连接状态
Aug 28 #Python
You might like
如何在PHP中使用Oracle数据库(4)
2006/10/09 PHP
让PHP支持页面回退的两种方法[转]
2007/02/14 PHP
PHP时间戳与日期之间转换的实例介绍
2013/04/19 PHP
解析左右值无限分类的实现算法
2013/06/20 PHP
php计划任务之ignore_user_abort函数实现方法
2015/01/08 PHP
PHP记录页面停留时间的方法
2016/03/30 PHP
PHP读取CSV大文件导入数据库的实例
2017/07/24 PHP
PHP笛卡尔积实现算法示例
2018/07/30 PHP
js中查找最近的共有祖先元素的实现代码
2010/12/30 Javascript
javascript学习笔记(七)Ajax和Http状态码
2014/10/08 Javascript
javascript事件冒泡和事件捕获详解
2015/05/26 Javascript
用window.onerror捕获并上报Js错误的方法
2016/01/27 Javascript
Bootstrap组件学习之导航、标签、面包屑导航(精品)
2016/05/17 Javascript
jQuery实现可兼容IE6的滚动监听功能
2017/09/20 jQuery
在vue-cli中组件通信的方法
2017/12/16 Javascript
jQuery+ajax读取json数据并按照价格排序示例
2018/03/28 jQuery
vue项目设置scrollTop不起作用(总结)
2018/12/21 Javascript
解决jquery validate 验证不通过后验证正确的信息仍残留在label上的方法
2019/08/27 jQuery
Element的el-tree控件后台数据结构的生成以及方法的抽取
2020/03/05 Javascript
vue同个按钮控制展开和折叠同个事件操作
2020/07/29 Javascript
Python通过poll实现异步IO的方法
2015/06/04 Python
python调用fortran模块
2016/04/08 Python
python字符串与url编码的转换实例
2018/05/10 Python
Tensorflow 实现修改张量特定元素的值方法
2018/07/30 Python
python 3调用百度OCR API实现剪贴板文字识别
2018/09/04 Python
Python之循环结构
2019/01/15 Python
python中字符串的编码与解码详析
2020/12/03 Python
法国综合购物网站:RueDuCommerce
2016/09/12 全球购物
药品促销活动方案
2014/02/14 职场文书
供应链金融服务方案
2014/05/25 职场文书
企业安全标语
2014/06/07 职场文书
会计求职自荐信
2015/03/26 职场文书
晚会开场白和结束语
2015/05/29 职场文书
go语言map与string的相互转换的实现
2021/04/07 Golang
Python通过loop.run_in_executor执行同步代码 同步变为异步
2022/04/11 Python
Windows server 2012 NTP时间同步的实现
2022/06/25 Servers