python:将变量值插入变量名

问题描述 投票:5回答:5

我想将变量的值插入python中另一个变量的名称中。在shell脚本中,它类似于:

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

但是我看不到如何在python中做类似的事情。有办法还是应该使用替代方法?谢谢,安迪

python variables
5个回答
12
投票

不要这样做!根据变量的值更改变量名会导致不必要的复杂性。较干净的方法是使用字典:

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

1
投票
for n in more_list:
    globals()["var_"+str(n)]=some_calculation

0
投票

字典是维护关联数组的一种方法。

dict = {}
dict[str] = calc();

0
投票

也许不完美,但是有两种可能的解决方案:

>>> name =“ var_1”>>> locals()[名称] = 5>>>打印var_15>>> exec(名称+“ = 6”)>>>打印var_16

0
投票

基本上,它不喜欢像var1 = foovar2 = barvar $ {id}实际上是一组具有相似特征的变量,这就是为什么您要以这种方式命名它的原因。尝试使用list或dict以更有效的方式使用哪个组变量!

© www.soinside.com 2019 - 2024. All rights reserved.