没有全局的对象引用 - Python

时间:2021-02-21 12:09:47

标签: python class object oop constants

我正在创建一个相当大的项目,显然全局变量是邪恶的,所以我试图一起避免全局变量。

假设我在一个模块中有以下代码:

模块 1:

class exampleClass(object):
    #class stuff
    def func(self):
        #do stuff

def differentFunc():
    example = exampleClass()

在另一个模块中,我需要引用我在不同函数中的不同点创建的这个实例:

模块 2:

def anotherfunc():
    example.func()

class anotherExampleClass():
    #class stuff
    def domorethings():
        example.func()

def morefuncs():
    example.func #etc

如何以不必使用全局变量的方式存储对此实例的引用?有我可以使用的模块吗?仅使用常量命名约定将其声明为常量是不好的做法吗?

编辑:如果有更好的方法可以提供更多信息:

  • 我将它用于数据库接口对象和机器学习模型对象。
  • 我实际上不需要这个对象的多个实例。
  • 我需要在多个模块中引用这个实例。

0 个答案:

没有答案