如何使用列表解析

图片[1]-如何使用列表解析-uusu优素-乐高,模型,3d打印,编程

根据已有列表,高效创建新列表的方式。

列表解析是Python迭代机制的一种应用,它常用于实现创建新的列表,因此用在[]中。

语法:

[expressionforiter_valiniterable]
[expressionforiter_valiniterableifcond_expr]
要求:列出1~10所有数字的平方
2####################################################
31、普通方法:
>>>L=[]
>>>foriinrange(1,11):
...L.append(i**2)
...
>>>printL
[1,4,9,16,25,36,49,64,81,100]
####################################################
2、列表解析
>>>L=[i**2foriinrange(1,11)]
>>>printL
[1,4,9,16,25,36,49,64,81,100]
1要求:列出1~10中大于等于4的数字的平方
2####################################################
31、普通方法:
4>>>L=[]
5>>>foriinrange(1,11):
6...ifi>=4:
7...L.append(i**2)
8...
9>>>printL
10[16,25,36,49,64,81,100]
11####################################################
122、列表解析
13>>>L=[i**2foriinrange(1,11)ifi>=4]
14>>>printL
15[16,25,36,49,64,81,100]
1要求:列出1~10所有数字的平方除以2的值
2####################################################
31、普通方法
4>>>L=[]
5>>>foriinrange(1,11):
6...L.append(i**2/2)
7...
8>>>printL
9[0,2,4,8,12,18,24,32,40,50]
10####################################################
112、列表解析
12>>>L=[i**2/2foriinrange(1,11)]
13>>>printL
14[0,2,4,8,12,18,24,32,40,50]
1要求:实现两个列表中的元素逐一配对。
21、普通方法:
3>>>L1=['x','y','z']
4>>>L2=[1,2,3]
5>>>L3=[]
6>>>forainL1:
7...forbinL2:
8...L3.append((a,b))
9...
10>>>printL3
11[('x',1),('x',2),('x',3),('y',1),('y',2),('y',3),('z',1),('z',2),('z',3)]
12####################################################
132、列表解析:
14>>>L1=['x','y','z']
15>>>L2=[1,2,3]
16L3=[(a,b)forainL1forbinL2]
17>>>printL3
18[('x',1),('x',2),('x',3),('y',1),('y',2),('y',3),('z',1),('z',2),('z',3)]
原文来自:https://www.py.cn
© 版权声明
THE END
喜欢就支持一下吧
点赞10 分享
评论 抢沙发
头像
欢迎您留下宝贵的见解!
提交
头像

昵称

取消
昵称表情代码图片

    暂无评论内容