我想知道是否有任何方法可以将python中的字符串转换为变量名并为其指定默认值。 例如,假设我有这个循环,
for i in range(1,4):
"User"+str("i")=0
它会给我变量User1,User2& User3分配了一个默认值0,我可以自行修改 我知道这可以使用文件,但还有另一种方法吗?
答案 0 :(得分:3)
您可以使用eval
执行此操作,但通常我建议使用dict
来存储密钥(变量名称)和相关值:
users = {}
for i in range(1,4):
users["User"+str(i)]=0
print users
# {'User1': 0, 'User2': 0, 'User3': 0}
只需使用正确的密钥访问字典,即可访问每个变量:
print users['User1']
# 0
答案 1 :(得分:3)
请参阅
中的locals
和globals
for i in range(1,4):
globals()["User"+str(i)] = 0
然后User2
将在全球范围内,例如
答案 2 :(得分:0)
您可以使用eval(),https://docs.python.org/2/library/functions.html#eval
eval(varname + "=" + value);