对不起,这个令人困惑的标题,在我的函数中,我的参数是我想要设置为全局变量名称的名称。我可以在函数之外执行此操作,并且可以实例化一个没有字符串作为名称的全局变量,而且我还没有找到任何其他文章同时解决了这两个问题。
def myFunc(varName):
temp = varName
# global vars()[temp] <== This line produces the error
vars()[temp] = 5 # varName becomes a local variable
您可以使用该globals
功能来实现这一点:
def set_global_var(name, value):
globals()[name] = value
if __name__ == '__main__':
set_global_var('foo', 3)
print(foo)
请注意,这在大多数情况下不是一个好主意。您可能希望改用全局dict
对象并简单地为其分配新键。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句