我想将变量的值插入python中另一个变量的名称中。在shell脚本中,它类似于:
for n in `more list`
do
var_$n = some_calculation
done
但是我看不到如何在python中做类似的事情。有办法还是应该使用替代方法?谢谢,安迪
不要这样做!根据变量的值更改变量名会导致不必要的复杂性。较干净的方法是使用字典:
vr={}
for n in alist:
vr[n]=some_calculation()
for n in more_list:
globals()["var_"+str(n)]=some_calculation
字典是维护关联数组的一种方法。
dict = {}
dict[str] = calc();
也许不完美,但是有两种可能的解决方案:
>>> name =“ var_1”>>> locals()[名称] = 5>>>打印var_15>>> exec(名称+“ = 6”)>>>打印var_16
基本上,它不喜欢像var1 = foovar2 = barvar $ {id}实际上是一组具有相似特征的变量,这就是为什么您要以这种方式命名它的原因。尝试使用list或dict以更有效的方式使用哪个组变量!