gpt4 book ai didi

python - 在模块之间共享资源的良好做法?

转载 作者:太空狗 更新时间:2023-10-29 18:03:59 25 4
gpt4 key购买 nike

<分区>

我正在重组我的代码,因此创建了新的命名空间。我正在为模块更改“静态”类(每个方法中带有@staticmethod 的类)。这是要走的路,对吧?

问题是我对如何在这些模块之间共享资源有疑问。

假设我有一个模块,我从中进行与数据库的所有连接,当然所有类/方法都共享存储数据库游标的变量(我使用的是 SQLite)。现在,在不同的模块中,它们也必须共享光标。

Graphical representation of dependences

那么,我的想法:

  • 在每个模块中声明全局变量。但是全局人是邪恶的,他们吃 child 并偷走我们的工作。所以我不知道这是不是要走的路。

    '''Sub Module 1'''

    global database_cursor
  • 用原始的 database_cursor 导入“父亲”database_module 并使用如下内容:

    '''Sub Module 1'''

    db_cursor = database_module.database_cursor

在这种情况下,这秒看起来不错,但我认为在很多情况下会导致递归导入,我想这是应该避免的事情。

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com