如何遍历一个整数范围,将一个字符串(例如“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)
。
关于python - 如何在python中用字符串初始化一系列列表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6378596/