繁体   English   中英

Python从顶级包导入

[英]Python import from beyond top-level package

我正在开发一个Django项目,我为此编写了一些非Web相关的库。

我的目录结构如下所示:

主文件夹

  • 定理证明
    • 这是我要导入的内容
  • 卷筒纸
    • 应用
      • 这是我想从中导入东西的地方

我正在运行应用程序的地方是web/文件夹。 这样做的正确方法是什么?

您可以将Theorem prover文件夹添加到PYTHONPATH 在应用启动之前设置环境变量,或者通过

import sys
sys.path.insert(0, '/path/to/theorem')

在导入定理相关模块之前。

  • 确保位于项目根目录下的settings.py具有sys.path.append(os.path.dirname(os.path.abspath(__file__)))
  • 来自网络 - >应用程序 - >这里是我要从中导入的东西:
    import Theorem_prover.here_are_the_things_I_want_to_import

使用importlib

importlib.import_module(name, package=None)

导入模块。 name参数指定以绝对或相对术语导入的模块(例如pkg.mod..mod )。 如果名称是以相对术语指定的,那么package参数必须设置为包的名称,该包用作解析包名的锚(例如import_module('..mod', 'pkg.subpkg')将导入pkg.mod)。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM