【发布时间】:2017-09-23 00:25:26
【问题描述】:
我在Pycharm 中开发了一个python3 包,但是当我尝试在我的测试用例中使用import 模块时遇到了一些令人困惑的行为。问题似乎出在内部包模块的目录路径上。解释这个问题有点困难,但这是要点。
所以 python 包名称是 pyugend. 现在,当我尝试将一个模块 - 在包内 - 命名为 Models 到测试用例中时,pycharm 强制我将路径引用为 pyugend.pyugend.Models. 所以我需要引用pyugend 两次。
但是,当我构建、安装并将此包导入jupyter 笔记本或某些脚本时,我遇到了有关pyugend 包找不到内部模块的错误。修复这些错误的唯一方法是将模块内部的路径更改为 pyugend.Models 之类的引用。
所以基本上,要在pycharm 内部运行测试,我已经确保所有内部包导入都使用像from pyugend.pyugend.Models import ... 这样的目录路径但是当我想在pycharm 之外使用包时,我实际上必须进入包,将所有 import pyugend.pyugend... 引用转换为单个 import pyugend.Models ... 引用。
【问题讨论】: