我有一个在本地构建的包,我希望分发以在另一个包中使用。在
pip install .
之后,我可以导入此包并在 Python 中运行函数,但 仅当在原始目录中时。 例如,安装包后立即:
>>> import mypkg
>>> mypkg.components.body_columns.dummify
<function dummify at 0x7fb380650e50>
但是,一旦离开该目录,就无法再导入了。例如在
cd ~/Desktop
之后:
>>> import mypkg
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ModuleNotFoundError: No module named 'mypkg'
此外,在以
pip show mypkg
给出的安装位置,当前只有 mypkg-1.3.0.dist-info
目录,没有 mypkg
目录。我一直在尝试遵循此指导,但还没有运气,这似乎是一个明显的问题。
我是尝试分发软件包的新手 - 知道发生了什么吗?
如果有帮助,(简化的)层次结构是:
mypkg
├── mypkg
│ └── components
│ ├── __init__.py
│ └── body_columns.py
├── __init__.py
├── app.py
└── setup.py
基础
__init__.py
写作:from . import mypkg
。