我对python的面向对象编程思维比较陌生,它对我来说相对来说比较慢。在Python中的类之间共享全局变量
是否有可能在具有多个函数的类之间传递全局变量?我在这里和其他来源广泛阅读了他们,但我仍然有点困惑。
我的最终目标是全局定义一个变量,在一个类的函数中为它赋值,然后在另一个类的函数中使用它。那可能吗?我正在为ArcMap构建一个pythonaddin,每个按钮都需要一个类。我想要一个按钮来为变量赋值,然后在脚本的另一个类中使用该变量。
(之前我得到了高射炮,我知道这是比较不好的形式在第一时间使用全局变量,我努力学习)
例如,作为一个高度简化的例子:
x = []
class A():
def func_1(self):
#populate the x variable
global x
x = 1
class B():
def func_2(self):
global x
#do stuff with x
这是可以接受的(即使不pythonic)?
尽可能避免使用全局变量。 –
如果要修改相关变量,则只需使用全局关键字。 –