如何在Python中动态初始化多个数组?

How to initialize many arrays dynamically in Python?

假设我想以动态方式初始化 6 个列表,每个列表包含 21 个数字,我该怎么做?

喜欢,

temporal_id1 = [0, 1, 2, ...., 20]
temporal_id2 = [21, 22, 23, ...., 42]
.    . 
.    .
.    . 
temporal_id6 = [105, 106, ...., 125]

我做的是静态方式。像这样:

temporal_id1 = []
for i in range(0,21):
    temporal_id1.append(i)
temporal_id2 = []
for i in range(21, 42):
    temporal_id2.append(i)
temporal_id3 = []
for i in range(42, 63):
    temporal_id3.append(i)
temporal_id4 = []
for i in range(63, 84):
    temporal_id4.append(i)
temporal_id5 = []
for i in range(84, 105):
    temporal_id5.append(i)
temporal_id6 = []
for i in range(105, 126):
    temporal_id6.append(i)

但是,这太天真了。我正在处理大数据,我必须初始化 107 个数组,每个数组有 4117 个项目。

我想的是这样的:

for i in range (0, 6):
    initialize list temporal_i with values (21 * i , 21 * (i+1)) ------ (?)

我只是想知道我应该在 (?) 行中写什么语句。

试试这种使用列表推导的方式:

[range(21* i, 21 * (i+1)) for i in range(0,6)]

您只需在 for 关键字起作用之前输入范围(21* i, 21 * (i+1))。