【发布时间】:2021-08-02 23:43:43
【问题描述】:
我正在尝试使用 pip 从源代码安装本地包,但我的代码没有被复制到 site-packages 文件夹中。而是使用链接到我的 python 源代码路径的 json 文件创建一个文件夹。 这是预期的行为吗?与在开发模式下安装(使用 -e 标志)有什么区别。
我的工作路径是这样的:
├── setup.py
└── my_package
├── __init__.py
└── module.py
我的 setup.py 文件如下所示:
import setuptools
setuptools.setup(name='my_package', version='0.0.1')
我正在打字:
python -m pip install .
然后当我在 python 中导入我的包时,它告诉我导入的包位于我的源代码文件夹中:
>>> import my_package
>>> my_package.__file__
path/to/my/desktop
在不将其上传到 PyPi 的情况下,将我的包分发给我的同事的推荐方法是什么? 也有人可以向我解释可以使用 setuptools 生成的 .wheel、.tar.gz 和 .egg 文件之间的区别及其用例吗?
【问题讨论】:
-
这个链接你查了吗:packaging.python.org主题打包的资源很多。
-
与问题“将我的包分发给我的同事的推荐方法是什么”相关:您可以告诉 pip 从各种来源安装。哪个来源可能取决于您和您的同事打算做什么。如果他们有贡献,我建议让 pip 从 CVS 安装,例如来自这个包
my_package所在的git repo。搜索:duckduckgo.com/?q=pip+install+from+git+repository -
感谢您的帮助,我已经阅读了python打包指南。该指南提到您可以install from source tree,但是在正常模式和开发模式(-e 标志)中,该包不会使用我的 python 版本(3.8)复制到站点包中。我的目标主要是分发我的包给其他同事使用。我是我的代码的唯一维护者。
标签: python-3.x pip windows-10