我有一个代码:
globals()['a%s' % int(x+1)] = someclass(some_things)
asmenys.append(y)
如何将y
变为我添加的变量(循环中的变量)? (不要对globals
方法的使用感到生气;出于某些原因,这是非常生气的。)
答案 0 :(得分:0)
您是否在询问如何从动态创建的globals()
返回的dict中提取变量?如果是这样,就无法完成。 globals()
不区分静态和动态创建的变量。
此外,虽然可以通过使用globals()
或locals()
从范围中提取变量,但有可能有更好的方法来解决您的问题。如果你能告诉我们为什么你需要这个,也许我们可以指出你在一个不同的(可行的和正确的/惯用的)方向。
如果您的目标是为globals()
返回的字典添加一个值,而您绝对需要这样做,那么就像使用任何其他字典一样:
globals()["a"] = "asd"
print globals()["a"]
以上打印asd
。