导语:
本文主要介绍了关于如何使用列表解析的相关知识,包括所有解析式,以及列表解析这些编程知识,希望对大家有参考作用。
根据已有列表,高效创建新列表的方式。
列表推导是Python迭代机制的一个应用,常用于创建新的列表,所以用在[]中。
语法:
[expression for iter_val in iterable]
[expression for iter_val in iterable if cond_expr]
实例展示:
要求:列出1~10所有数字的平方
2####################################################
31、普通方法:
>>> L = []
>>> for i in range(1,11):
... L.append(i**2)
...
>>> print L
[1, 4, 9, 16, 25, 36, 49, 64, 81, 100]
####################################################
2、列表解析
>>>L = [ i**2 for i in range(1,11)]
>>>print L
[1, 4, 9, 16, 25, 36, 49, 64, 81, 100]
1 要求:列出1~10中大于等于4的数字的平方
2 ####################################################
3 1、普通方法:
4 >>> L = []
5 >>> for i in range(1,11):
6 ... if i >= 4:
7 ... L.append(i**2)
8 ...
9 >>> print L
10 [16, 25, 36, 49, 64, 81, 100]
11 ####################################################
12 2、列表解析
13 >>>L = [ i**2 for i in range(1,11) if i >= 4 ]
14 >>>print L
15 [16, 25, 36, 49, 64, 81, 100]
1 要求:列出1~10所有数字的平方除以2的值
2 ####################################################
3 1、普通方法
4 >>> L = []
5 >>> for i in range(1,11):
6 ... L.append(i**2/2)
7 ...
8 >>> print L
9 [0, 2, 4, 8, 12, 18, 24, 32, 40, 50]
10 ####################################################
11 2、列表解析
12 >>> L = [i**2/2 for i in range(1,11) ]
13 >>> print L
14 [0, 2, 4, 8, 12, 18, 24, 32, 40, 50]
1 要求:实现两个列表中的元素逐一配对。
2 1、普通方法:
3 >>> L1 = ['x','y','z']
4 >>> L2 = [1,2,3]
5 >>> L3 = []
6 >>> for a in L1:
7 ... for b in L2:
8 ... L3.append((a,b))
9 ...
10 >>> print L3
11 [('x', 1), ('x', 2), ('x', 3), ('y', 1), ('y', 2), ('y', 3), ('z', 1), ('z', 2), ('z', 3)]
12 ####################################################
13 2、列表解析:
14 >>> L1 = ['x','y','z']
15 >>> L2 = [1,2,3]
16 L3 = [ (a,b) for a in L1 for b in L2 ]
17 >>> print L3
18 [('x', 1), ('x', 2), ('x', 3), ('y', 1), ('y', 2), ('y', 3), ('z', 1), ('z', 2), ('z', 3)]
本文为原创文章,版权归知行编程网所有,欢迎分享本文,转载请保留出处!
你可能也喜欢
- ♥ python字典有什么特点?如何应用它们?11/24
- ♥ 如何在python中表示链表?11/16
- ♥ 如何在 Python 中绘制 P-R 曲线09/11
- ♥ Python 文件路径是什么?怎么写?09/11
- ♥ python2.7 pip安装失败怎么办?12/24
- ♥ 什么是 python 对象方法12/20
内容反馈