通过Pip Editable安装的Python包不一致

通过Pip Editable安装的Python包不一致,python,python-3.x,import,pip,Python,Python 3.x,Import,Pip,我有一个具有以下标准目录结构的python包: package_name/ setup.py package_name/ module_1.py module_2.py ... tests/ docs/ 我已经用pip3安装-e安装了这个软件包。。我注意到一个不一致的导入问题。(请通读到底!)如果我重新启动终端并在解释器中运行以下(1): >>> from package_name import

我有一个具有以下标准目录结构的python包:

package_name/
    setup.py
    package_name/
        module_1.py
        module_2.py
        ...
    tests/
    docs/
我已经用
pip3安装-e安装了这个软件包。
。我注意到一个不一致的导入问题。(请通读到底!)如果我重新启动终端并在解释器中运行以下(1):

>>> from package_name import module_1
我得到一个导入错误。如果我改为运行此(2):


它进口很好。如果我随后导航到该目录并重新运行
pip3安装-e.
,我可以用标准方式导入(如下(1))。究竟是什么原因造成的?为了让事情变得更奇怪,我可以在Jupyter和我的IDE中以标准方式(1)导入,而无需重新安装包。此问题仅在我打开/重新启动终端时出现。

应通过将主项目文件夹
包名称/
添加到
路径中来解决

此外,请尝试使用不同的名称重命名项目文件夹,以避免您自己、与您一起工作的人员以及帮助python找到正确的模块位置时产生混淆

您还应该在每个模块文件夹上创建
\uuuuu init\uuuuuu.py
文件,即使这些文件是空文件。这也有助于python找到模块的位置

>>> from package_name.package_name import module_1