我想实现一个循环,在每次迭代中我根据迭代器值命名变量。例如 -
for i in range(1,10):
r<value of i> = # some value
有没有办法可以做到,除了将所有这些变量作为How do you create different variable names while in a loop? (Python)中提到的字典中的字符串键。我希望每个人都是一个单独的变量。
答案 0 :(得分:6)
您可以使用globals()
执行此操作,但它是bad idea:
>>> for i in range(1,10):
... globals()['r'+str(i)] = "foo"
...
>>> r1
'foo'
>>> r2
'foo'
首选globals()
的词典:
>>> my_vars = dict()
>>> for i in range(1,10):
my_vars['r'+str(i)] = "foo"
>>> my_vars['r1']
'foo'
>>> my_vars['r2']
'foo'