在循环索引的基础上命名变量

Sri*_*jan 0 python variables for-loop

我想实现一个循环,在每次迭代中我根据迭代器值命名变量.例如-

for i in range(1,10):
    r<value of i> = # some value
Run Code Online (Sandbox Code Playgroud)

有没有办法可以做到这一点,除了将所有这些变量作为字典中的字符串键,如在循环如何创建不同的变量名称中所述?(Python).我希望每个人都是一个单独的变量.

Ash*_*ary 6

你可以使用globals(),但这是一个坏主意:

>>> for i in range(1,10):
...         globals()['r'+str(i)] = "foo"
...     
>>> r1
'foo'
>>> r2
'foo'
Run Code Online (Sandbox Code Playgroud)

喜欢dict globals():

>>> my_vars = dict()
>>> for i in range(1,10):
        my_vars['r'+str(i)] = "foo"
>>> my_vars['r1']
'foo'
>>> my_vars['r2']
'foo'
Run Code Online (Sandbox Code Playgroud)