如何在列表中生成N个数字的N个列表

时间:2019-11-11 20:58:34

标签: python

-如果我有一个长度为n的列表,请说:

N = [1, 3, 5, 7]  (in this case n = 4)

-我想从N个列表中生成n个列表(因此,在这种情况下,我将生成4个列表)

-我也希望这些生成的列表的长度为r。 (在这种情况下,假设r = 3):

-并且所有这些r值都应具有N的递增值

-所以,我想要类似的东西:

[1, 1, 1]
[3. 3, 3]
[5, 5, 5]
[7, 7, 7]

-最后,我也想给它们起个名字...类似

a_1 = [1, 1, 1]
a_2 = [3. 3. 3]
a_3 = [5, 5, 5]

1 个答案:

答案 0 :(得分:1)

首先,您必须遍历初始列表,然后您可以使用一个值创建一个新列表,并将其乘以r即可得到所需的输出:

r = 3
N = [1, 3, 5, 7]

result = {}
for idx, item in enumerate(N):
    result[idx] = [item]*r

有多种方法可以为每个列表创建单独的变量,但最好的方法是在字典中查找字典,我将原始列表中的值索引用作键,然后输出如下:

{
    0: [1, 1, 1], 
    1: [3, 3, 3], 
    2: [5, 5, 5], 
    3: [7, 7, 7]
}