我需要添加一个变量"a"到全局变量,并且能够随时从Item类中恢复它。结果:我无法在全局变量中看到它
下面有一个例子。当我打印globals()时,我找不到新的"a"变量。
具体来说,我需要能够将printVal结果保存在一个名为"a"的变量中,以便在下次调用该函数时查阅。
在我的最后一个程序中,我计划添加尽可能多的不同变量(变量和值)。
的例子:
class Item():
def printVal(self,value):
return value
def func(self):
userInput = input("Input string:")
if userInput!="0":
exec("a=self.printVal(""+userInput+"")",globals(),locals())
else:
return
print(globals())
self.func()
if __name__ == "__main__":
item = Item()
item.func()
如果你只是想设置一个全局变量,并在运行时生成一个名称,你可以这样做:
globals()[name] = val
顺便说一下,printVal
方法是假的。