python从子目录嵌套导入

树童
root
├── rootfile.py
├── folder
│   └── __init__.py
│   └── file.py
│   └── subfolder
│       └── __init__.py
│       └── subfile.py

文件夹结构如上。

假设文件有函数 foo(),子文件 subfoo()。

rootfile 从 file.py 导入 foo()

from folder.file import foo

文件从 subfile.py 导入 subfoo()

from subfolder.subfile import subfoo

并报告 ModuleNotFoundError: No module named 'subfolder'。我应该如何解决这个错误?我在 file.py 中尝试了 sys.path.append 但它没有用。

有趣的是,

from folder.subfolder.subfile import subfoo

从 rootfile 工作,但这不是我需要的。

我提前感谢您的时间和指导。

米希克

很可能您的“查找导入的路径”包含项目的根目录,但不包含文件夹/子文件夹等。

使用相对导入应该会有所帮助:

   from .subfolder.subfile import subfoo

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章