Creating variables from string names
本问题已经有最佳答案,请猛点这里访问。
我想知道是否有任何方法可以将python中的字符串转换为变量名并为其指定默认值。例如,假设我有这个循环,
1 2 | for i in range(1,4): "User"+str("i")=0 |
它会给我变量user1、user2和user3分配一个默认值0,我可以自行修改。我知道使用文件可以做到这一点,但还有其他方法吗?
见
1 2 | for i in range(1,4): globals()["User"+str(i)] = 0 |
例如,
您可以使用
1 2 3 4 5 | users = {} for i in range(1,4): users["User"+str(i)]=0 print users # {'User1': 0, 'User2': 0, 'User3': 0} |
只需使用正确的键访问字典,就可以访问每个变量:
1 2 | print users['User1'] # 0 |
您可以使用eval(),https://docs.python.org/2/library/functions.html eval
1 | eval(varname +"=" + value); |