如何导入项目子文件夹,以便在导入已安装的项目后可用?

How to import a project subfolder so that it is available once the installed project has been imported?

如何导入项目子文件夹以便在导入项目后可用?

例如如何导入project.tools的内容,以便在使用import project导入项目后,project.tools.common.function()可用?

project
|
|--tools
|  |--__init__.py
|  \--common.py
|
|--__init__.py
|--core.py
\--cli.py

我试过以下方法:

    project/__init__.py 中的
  1. from . import toolsproject/tools/__init.py 中的 from . import * 结果:ImportError: cannot import name 'tools'.
  2. from .tools import *project/__init__.pyfrom . import *project/tools/__init.py 导致:ModuleNotFoundError: No module named 'project.tools'.
  3. from .tools import common in project/__init__.pyfrom . import * in project/tools/__init.py 结果是:ModuleNotFoundError: No module named 'project.tools'.

这将解决您的问题

import tools.common as COMMON
COMMON.function()

直接在您的 .py 脚本中使用 import tools。 然后在函数调用中使用tools.common.function()

当您将 init.py 放入您的文件夹时,该文件夹将变为可调用。 因此,您可以将该文件夹及其脚本直接导入到您的脚本中。