Python 用字符串和数字声明变量名?

Python 用字符串和数字声明变量名?,python,declaration,Python,Declaration,在运行循环时,有没有办法用数字声明变量名字符串?我该怎么做?例如,给定n1,n2,n3…,n1必须存储i+l值(n(“字符串”)与i(“数字”)=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 #prin

在运行循环时,有没有办法用数字声明变量名字符串?我该怎么做?例如,给定
n1,n2,n3…
n1
必须存储
i+l
值(
n(“字符串”)
i(“数字”)
=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]访问每个变量,而不是n1

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

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()

这就是您要做的:?不要尝试动态命名变量。如果您有键值对,请使用
dict