python经典有序序列的list列表推导式实践运用
【阅读全文】
生成一个数据列表
# 初始化一个列表
list_1 = []
# 使用循环生成一个列表数据
for val in range(0,20,1):
# 加入集合
list_1.append(val)
# 打印列表数据
print(list_1)
# [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19]
使用列表推导式生成该数据列表
# 列表推导式生成列表数据
list_2 = [i for i in range(20)]
# 打印列表数据
print(list_2)
# [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19]
"""
分析:
1、使用一行代码的列表推导式就完成了该列表的生成
2、[i for i in range(20)],第一个i元素代表向列表list_2中添加的元素
3、[i for i in range(20)],第二个i元素代表for循环遍历的i元素
"""
使用列表推导式生成只有偶数的数据列表
# 在基本列表推导式的基础上加入条件判断
list_3 = [i for i in range(20) if i % 2 == 0]
# 打印列表推导式
print(list_3)
# [0, 2, 4, 6, 8, 10, 12, 14, 16, 18]
"""
分析:
[i for i in range(20) if i % 2 == 0],第三个if后面的i元素,
相当于是在for循环内部提取其中的i元素作条件校验。
"""
双重循环的列表推导式
# 既然是双重循环则需要定义两个变量a、b
list_4 = [(a,b) for a in range(4) for b in range(5)]
# 由于打印结果是列表中包含元组信息,使用pprint可以美观的打印数据
from pprint import pprint
# 打印列表推导式
pprint(list_4)
# [(0, 0),
# (0, 1),
# (0, 2),
# (0, 3),
# (0, 4),
# (1, 0),
# (1, 1),
# (1, 2),
# (1, 3),
# (1, 4),
# (2, 0),
# (2, 1),
# (2, 2),
# (2, 3),
# (2, 4),
# (3, 0),
# (3, 1),
# (3, 2),
# (3, 3),
# (3, 4)]
"""
分析:
其中a、b分别对应第一个和第二个for循环的遍历元素a、b,
同样可以加入a、b元素的条件校验,比如可以写成如下的列表推导式
list_5 = [(a,b) for a in range(4) if a % 2 == 0 for b in range(5) if b % 2 == 0]
"""
【往期精彩】
● python常用转义字符串总结:各种字符转义的不同、如何取消转义字符效果?
● 推荐一款python、excel集成的数据分析工具PyXLL-Jupyter!
● 如何使用python完成对WebService服务的调用?suds-py3插件安利一下!
● 介绍一款优秀的IDE Grid Studio,Excel深度集成python,直接编写并执行python代码块!
● 十大开源软件基金会你知道哪些?
● python内置函数通过字符串的方式来执行函数代码块,类似java的反射机制相当强大!
● python-Coverage 代码覆盖率统计工具,生成html代码报告
● python程序的处理进度、可视化管理,对运行步骤一目了然!
● 磨刀不误砍柴工,PyCharm开发工具的常规配置,充分提高开发效率!
● python-openpyxl Excel的单元格样式设置,包括字体、样式、宽高等等!
● 了解一下百度提供的python通用文字识别功能,距离百度AI近了一点点!
● 一句代码生成的超炫二维码
● python-docxtpl妙用:论文神器,excel习题集自动转换成word文档格式!
● 办公室文员必备python神器,将PDF文件表格转换成excel表格!
本文由WeiXin公众号【python 集中营】一键发布,更多精彩文章、视频资料即可领取!