微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Python:当模块位于应用程序根目录上方的父目录中时解析导入

如何解决Python:当模块位于应用程序根目录上方的父目录中时解析导入

我正在创建一个小包来促进一些工作。我遇到的问题是此错误消息 ImportError: Attempted Relative Import With No KNown Parent Package。我一直在搜索如何解决这个问题,但我没有找到任何有效的方法

所以这里是包结构。请注意,应用程序位于这些子文件夹中,并且它们会利用一些更高级别的模块。

- Project_folder
  - Callbacks
    - PrintingCallback.py
    - LoggingCallback.py

  - DataModules
    - preprocess.py
    - utils.py

  - app1
    - app1.py

  - app2
    - app2.py

  - app3
    - app3.py

所以主要操作是在 app1.pyapp2.py 命令行应用程序中。我正在为 CLI 使用 hydra 框架。但是,那些 python 应用程序需要导入 CallbacksDataModules 文件夹以及其中的文件。那么我将如何将 preprocess.py 模块导入到 app1.py 中?这才是真正的问题。

我尝试使用绝对路径,例如 from Callback.LoggingCallback import LoggingCallback,然后仍然生成错误消息 ImportError: Attempted Relative Import With No KNown Parent Package。那么有没有更好的方法来做到这一点,即合理的 Pythonic?

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。