如何在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))。
假设我想以动态方式初始化 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))。