我在Python中使用了大量的全局变量,这些变量的值在代码执行过程中需要不断地更改。对我来说,一个非常好的解决方案是将全局变量作为函数内的参数,然而,据我所知,只有在函数定义期间通过实际命名特定变量才能更改函数内的全局变量。因为我使用了许多不同的变量名,这将迫使我为每个变量名创建许多函数。
我想要的是这样的:
x = 5
def foo(_):
global _
_ = 10
return _
foo(x)
print(x)其中x现在应该是10,而不是实际输出,实际输出是5。达到我想要的最有效的方法是什么?
发布于 2021-01-12 01:47:03
由于在调用foo(x)时需要对x进行命名,因此使用x = foo(x)并不难
x = 5
def foo(_):
_ = 10
return _
x = foo(x)
print(x)发布于 2021-01-12 01:52:53
我可能不完全理解您需要这样做,但是,您也可以按如下方式管理全局变量:
x = globals()
x['cartoon'] = 'mickey'
print(x['cartoon'])https://stackoverflow.com/questions/65671955
复制相似问题