Python-从父文件夹导入模块

发布于 2021-02-02 23:21:29

我正在运行Python 2.5。

这是我的文件夹树:

ptdraft/
  nib.py
  simulations/
    life/
      life.py

(我还在__init__.py每个文件夹中,为便于阅读,在此省略)

如何nib从模块内部导入life模块?我希望无需修补sys.path就可以做到。

注意:正在运行的主模块在ptdraft文件夹中。

关注者
0
被浏览
158
1 个回答
  • 面试哥
    面试哥 2021-02-02
    为面试而生,有面试问题,就找面试哥。

    看来问题与该模块位于父目录或类似目录中无关。

    你需要将包含的目录添加ptdraft到PYTHONPATH

    你说过import nib与你合作,这可能意味着你已将ptdraft自身(而非其父项)添加到PYTHONPATH中。



  • 面试哥
    面试哥 2021-02-02
    为面试而生,有面试问题,就找面试哥。

    你可以使用相对导入(python> = 2.5):

    from ... import nib
    

    (Python 2.5的新增功能)PEP 328:绝对和相对导入

    编辑:添加了另一个点“。” 上两个包



知识点
面圈网VIP题库

面圈网VIP题库全新上线,海量真题题库资源。 90大类考试,超10万份考试真题开放下载啦

去下载看看