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中用fork()函数生成的子进程
May 04 Python
Python记录详细调用堆栈日志的方法
May 05 Python
python实现给数组按片赋值的方法
Jul 28 Python
解决python3中自定义wsgi函数,make_server函数报错的问题
Nov 21 Python
Python异常对代码运行性能的影响实例解析
Feb 08 Python
解决python中无法自动补全代码的问题
Dec 04 Python
用python实现刷点击率的示例代码
Feb 21 Python
python实现矩阵打印
Mar 02 Python
python argparser的具体使用
Nov 10 Python
python psutil监控进程实例
Dec 17 Python
Python基础之进程详解
May 21 Python
python geopandas读取、创建shapefile文件的方法
Jun 29 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
PHP4(windows版本)中的COM函数
2006/10/09 PHP
为PHP初学者的8点有效建议
2010/11/20 PHP
解析获取优酷视频真实下载地址的PHP源代码
2013/06/26 PHP
PHP实现RTX发送消息提醒的实例代码
2017/01/03 PHP
ThinkPHP 3.2.3实现加减乘除图片验证码
2018/12/05 PHP
jQuery学习笔记 操作jQuery对象 CSS处理
2012/09/19 Javascript
日历查询的算法 如何计算某一天是星期几
2012/12/12 Javascript
flash调用js中的方法,让js传递变量给flash的办法及思路
2013/08/07 Javascript
javascript基本类型详解
2014/11/28 Javascript
Extjs 点击复选框在表格中增加相关信息行
2016/07/12 Javascript
AngularJS 与Bootstrap实现表格分页实例代码
2016/10/14 Javascript
JavaScript模块化之使用requireJS按需加载
2017/04/12 Javascript
基于JavaScript实现瀑布流布局
2018/08/15 Javascript
vue全局使用axios的方法实例详解
2018/11/22 Javascript
jQuery提示框插件SweetAlert用法分析
2019/08/05 jQuery
vue中使用腾讯云Im的示例
2020/10/23 Javascript
[04:03]2014DOTA2西雅图国际邀请赛 LGD战队巡礼
2014/07/07 DOTA
python 实现归并排序算法
2012/06/05 Python
Python3基础之基本数据类型概述
2014/08/13 Python
Python中类型检查的详细介绍
2017/02/13 Python
python实现隐马尔科夫模型HMM
2018/03/25 Python
优瑞自动咖啡机官网:Jura
2018/09/29 全球购物
求最大连续递增数字串(如"ads3sl456789DF3456ld345AA"中的"456789")
2015/09/11 面试题
Overload和Override的区别
2012/09/02 面试题
幼儿园优秀教师事迹
2014/02/13 职场文书
个人授权委托书
2014/04/03 职场文书
体操比赛口号
2014/06/10 职场文书
研修心得体会
2014/09/04 职场文书
学生党员检讨书范文
2014/12/27 职场文书
稽核岗位职责范本
2015/04/13 职场文书
小学生班干部竞选稿
2015/11/20 职场文书
《敬重卑微》读后感3篇
2019/11/26 职场文书
redis实现的四种常见限流策略
2021/06/18 Redis
MySQL定时备份数据库(全库备份)的实现
2021/09/25 MySQL
SpringBoot中使用Redis作为全局锁示例过程
2022/03/24 Java/Android
Vue3实现简易音乐播放器组件
2022/08/14 Vue.js