如何在'FOR'循环中命名列表

时间:2012-02-20 03:35:00

标签: python list for-loop python-3.x

我必须像这样使用FOR循环

x=0
for i in range(22):
    SOME OPERATION

然后将操作值存储在[0,0,0,0,0]这样的列表中 取决于OPERATION结果,将对列表中的5个值中的任何一个执行+1。

问题是我需要每个迭代的列表。你可以帮我命名/初始化一个名为list1,list2等的列表,直到列表22.这样我可以保持+1列出五个值中的任何一个

AK

4 个答案:

答案 0 :(得分:3)

for i in range(22):
    myLists[i] = [0,0,0,0,0]

答案 1 :(得分:2)

如果你需要一组命名列表,那么听起来你想要一本字典:

myLists = dict()
for x in range(22):
    myLists[ 'list%d' % x ] = [0,0,0,0,0]

如果您更愿意使用列表列表:

myLists = list()
for x in range(22):
    myLists.append( [0,0,0,0,0] )

答案 2 :(得分:1)

您可以在顶部定义lists变量:

lists = [list1, list2, ... ,list22]

x=0
for i in range(22):
    SOME OPERATION against lists[i]

答案 3 :(得分:0)

强制性单行:

operation()返回[0,0,0,0]

<强>字典

mydict = {num : operation() for num in range(22)}

{0: [0, 0, 0, 0], 
 1: [0, 0, 0, 0], 
 2: [0, 0, 0, 0], 
 3: [0, 0, 0, 0], 
 ...,     
 21: [0, 0, 0, 0]}

<强>列表

mylist = [operation() for num in range(22)]

[[0, 0, 0, 0],
 [0, 0, 0, 0],
 [0, 0, 0, 0],
 ...,
 [0, 0, 0, 0]]