使用字符串和数字声明变量名称



有没有办法在运行循环时用数字声明变量名字符串?我该怎么做?例如给定n1, n2, n3...n1必须存储i+l值(n("string") i("number") = n1),然后n2必须存储迭代循环i+l值.....等

i=0
l=1
K=range(2,10)
for i in K:
    print i
    #how to declare a variable name by concatenating string and number
    print '--------',l+i
    #print n1,n2.....etc

使用这样的列表...

n = []
for i in k:
    n.append(some_value)

然后,您可以使用 n[0]、n[1]...

(如果您需要更灵活的索引号,您也可以使用字典......

n = {}
for i in k:
    n[i] = some_value

尽管这是一个非常糟糕的主意,是的,你可以做到。

def fun():
    name = "n"
    for i in range(4):
        exec '%s%d = %d'%(name, i, 2**i)
    print n0
    print n1
    print n2
    print n3
fun()