首页 > 解决方案 > 一次导入一个模块并在 python 中全局使用它

问题描述

我做了一些研究,了解到python的import语句只导入一次,再次使用时,它只是检查它是否已经导入。我正在做一个更大的项目,并注意到在多个文件中导入了相同的内容,这显然不会影响性能,但会使代码有点污染 imo。我的问题是:有没有办法只导入一次并在目录中的任何地方使用它而不一遍又一遍地调用导入语句?

以下是我在各种文件中导入的一些模块:

from PyQt5.QtWebEngineWidgets import QWebEngineView
from PyQt5.QtCore import *

标签: pythonimportglobal

解决方案


每个需要在范围内具有这些导入名称的模块(.py 文件)都必须有自己的导入语句。这是 Python 中的标准约定。但是,不建议import *只从包中导入您实际使用的名称。

可以将包导入语句放在__init__.py目录中的文件中,而不是放在每个 .py 文件中,但是您仍然需要一个相对导入语句来从包中导入这些名称,如下所述:导入外部包一次我的模块没有被添加到命名空间


推荐阅读