我正在重新组织我的代码,因此创建了新的命名空间。我正在为模块更改“静态”类(每个方法中带有 @staticmethod 的类)。这是要走的路,对吧?
问题是我对如何在这些模块之间共享资源有疑问。
假设我有一个模块,我从中进行所有与数据库的连接,当然所有类/方法都共享存储 DB 游标的变量(我正在使用 SQLite)。现在,在不同的模块中,它们也必须共享光标。
所以,我的想法:
在每个模块中声明全局变量。但是全球人是邪恶的,吃掉孩子,偷走我们的工作。所以我不知道这是否是要走的路。
'''Sub Module 1''' global database_cursor
使用原始 database_cursor 导入“父亲”database_module 并使用如下内容:
'''Sub Module 1''' db_cursor = database_module.database_cursor
在这种情况下,第二个看起来不错,但我认为在很多情况下会导致递归导入,我想这是应该避免的。