pythonxuexi 2019-12-06
python中列表推导式用于使用其他列表创建一个新列表。
其基本形式为: [表达式 for 变量 in 列表]
如:
# 想得到1-10的平方组成的list list_1_10 = [x**2 for x in range(1,11)] print(list_1_10)
输出为:
复杂一点的列表表达式可以对原列表进行变换和筛选。
如:
# 想得到1-10中为偶数的平方组成的list example = [i**2 for i in range(1,11) if i%2 == 0 ] print(example)
输出为:
以及对多重嵌套的list进行变换筛选。
如:
# 想得到多重嵌套中的数是2的倍数的平方组成的list example2 = [[1,2,3],[4,5,6],[7,8,9],[10]] example3 = [j**2 for i in example2 for j in i if j%2 == 0] print(example3)
输出为:
如:
# 想得到多重嵌套的list中一重嵌套中list长度大于1的list中的数为2的倍数的平方组成的list example4 = [[1,2,3],[4,5,6],[7,8,9],[10]] exmaple5 = [j**2 for i in example2 if len(i)>1 for j in i if j%2 == 0] print(exmaple5)
输出为: