我们可以使用列表理解来初始化嵌套列表吗?

时间:2019-09-06 16:19:44

标签: python list-comprehension

我对python还是很陌生,我正在研究列表理解,但是我被困在如何使用这样的列表理解来初始化嵌套列表

a = [[1,2,3],[4,5,6],[7,8,9]]

例如,我可以使用列表理解来初始化这样的列表

var = [x for x in range(0,10)]

但是我不知道初始化嵌套列表。

4 个答案:

答案 0 :(得分:2)

a = [[i * 3 + j + 1 for j in range(3)] for i in range(3)]

答案 1 :(得分:0)

[[i, i+1, i+2] for i in range(1, 10, 3)]
# [[1,2,3], [4,5,6], [7,8,9]]

答案 2 :(得分:0)

您也可以这样做:

a = [[j+i for j in range(3)] for i in range(1,9,3)]
print (a)

输出:

[[1, 2, 3], [4, 5, 6], [7, 8, 9]]

答案 3 :(得分:0)

金达语含糊不清的问题,我想说您可以为pn数字集的序列做

[ list(range(u+1,u+p+1)) for u in range(0,n*p,p) ]

但是,当您询问嵌套的理解时,我将包括这个

aa = [1,2,3,4,5,6,7,8,9,10,11,12]
yourlist = [ [ aa[x] for x in range(x,x+3) ] for x in range(0,len(aa),3) ]

x交给内部嵌套的理解,就像在常规的for循环中一样