如何遍历一个整数范围,将一个字符串(例如“array”)与循环的迭代连接起来,并用生成的字符串初始化一个列表?下面的单行显示了我想做什么,在那里我得到了一个“无法分配给函数调用”的错误。
for i in range(int(nmat)): eval('array'+str(i)) = []
同时,在代码的更下方,接受以下代码(前提是我注释掉了导致它爆炸的前面代码)
eval('array'+str(ct1)).append(array[1:9])
但是它告诉我名称“array0”未定义(因为我不知道如何以这种方式初始化一系列列表)。非常感谢您的帮助,谢谢。
请您参考如下方法:
你不应该那样做。
与其使用多个变量数组i,不如只使用一个:array,类型为列表。例如,如果列表的每个元素都应该是一个空列表:
array = [[] for i in range(int(nmat))]
然后您可以使用 array[0] 访问第一个元素,使用 array[1] 访问第二个元素,以及 array 中的元素数量code>(在本例中为 int(nmat))和 len(array)。
