如何将变量名赋值给变量以获取变量的值?
问题描述:
如何将变量名赋值给变量以获取变量的值? 这工作如何将变量名赋值给变量以获取变量的值?
a=1
b=a
其输出,如果你使用的print(b)
你会得到1.But如果我用这个,
for i in range (0,a1,2):
r=i/2
e[r] ='c%s'%i
print(e[r])
(C0,C2,C4,......有一个值) 然后它会输出c0,c2,c4 ... 我怎样才能让它输出c0,c2,c4 ...的值? 我尝试将''
更改为" "
,但它仍然无效。
答
使用dict
来存储你的 “变量” 命名变量:
>>> variables = {}
>>> prefix = 'c'
>>> variables[prefix + '0'] = 123
>>> variables[prefix + '0']
123
>>> variables['c0'] # is the same thing as the above
123
答
不要使用
c0, c2, c4, ...
但使用
c[0], c[2], c[4], ...
,然后改变你的循环
for i in range (0,a1,2):
r=i/2
e[r] ='c%s'%i
print(e[r])
到
for i in range (0,a1,2):
r=i/2
e[r] = c[i] # Here is the difference
print(e[r])
+0
可能还会介绍如何初始化'c'。 –
使用字典,如'{ 'C0':1, 'C2':7,...}'。 –
如果我正确理解这一点,您正在寻找eval。 https://stackoverflow.com/questions/295058/convert-a-string-to-preexisting-variable-names –
@ConnorWilson,...这是一个危险的(字面意思是,在安全错误倾向意识)路径发送有人下来,当适应最佳实践的响应式答案也可用。 –