列表生成式(列表推导式)

注: 如果数据里较大的列表生成式,推荐使用 生成器

 一维数组列表生成式:

entry = [i for i in range(1,10)]
print(entry)
>>>
[1, 2, 3, 4, 5, 6, 7, 8, 9]

 

二维数组列表生成式:

matrix = [[1,2,3],[4,5,6],[7,8,9]]
entry = [i for row in matrix for i in row]
print(entry)
>>>
[1, 2, 3, 4, 5, 6, 7, 8, 9]

 

二维数组列表生成式:

matrix = [[1,2,3],[4,5,6],[7,8,9]]
squared = [[x**2 for x in i] for i in matrix]
print(squared)
>>>
[[1, 4, 9], [16, 25, 36], [49, 64, 81]]

 

多维数组列表生成式:

matrix = [[[1, 2, 3], [4, 5, 6]], [[7, 8, 9], [10, 11, 12]]]
abc = [x for x in matrix for x in x for x in x]
print(abc)
>>>
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12]
matrix = [[[1, 2, 3], [4, 5, 6]], [[7, 8, 9], [10, 11, 12]]]
abc = [o for n in matrix for m in n for o in m]
print(abc)
>>>
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12]

 

posted @ 2017-06-14 22:27  Vincen_shen  阅读(305)  评论(0)    收藏  举报