如何循环一系列整数,将一个字符串(例如"array")与循环的迭代连接起来,并用结果字符串初始化一个列表?以下单行显示了我想要做的事情,我在哪里得到"无法分配给函数调用"错误.
for i in range(int(nmat)): eval('array'+str(i)) = []
Run Code Online (Sandbox Code Playgroud)
同时,在代码中进一步向下接受以下代码(前提是我注释掉了导致它炸弹的前面的代码)
eval('array'+str(ct1)).append(array[1:9])
Run Code Online (Sandbox Code Playgroud)
但是它告诉我名称'array0'是未定义的(因为我不知道如何以这种方式初始化一系列列表).非常感谢帮助,谢谢.
你不应该这样做.
而不是使用多个变量数组i,只使用一个:array类型列表.例如,如果列表的每个元素都应该是一个空列表:
array = [[] for i in range(int(nmat))]
Run Code Online (Sandbox Code Playgroud)
然后,您可以访问第一个元素array[0],第二个array[1]元素和array(int(nmat)在本例中)元素的数量len(array).