Python:将变量值插入变量名

11 投票
5 回答
58135 浏览
提问于 2025-04-15 19:14

我想把一个变量的值放到另一个变量的名字里。在 shell 脚本中,这样做会像下面这样:

for n in `more list`  
do  
var_$n = some_calculation  
done

但是我不知道在 Python 中怎么做类似的事情。有没有什么方法,或者我应该用其他方式来实现呢?
谢谢,
安迪

5 个回答

1

可能不是最完美的,但这里有两个可能的解决办法:

>>> name = "var_1"
>>> locals()[name] = 5
>>> print var_1
5
>>> exec(name + "= 6")
>>> print var_1
6
6
for n in more_list:
    globals()["var_"+str(n)]=some_calculation

当然可以!请把你想要翻译的内容发给我,我会帮你把它变得简单易懂。

20

别这样做!变量名如果根据另一个变量的值而变化,会让事情变得复杂得多。更简单的方法是使用字典:

vr={}
for n in alist:
    vr[n]=some_calculation()

撰写回答