Python:从文件夹中pip安装轮依赖项

vef*_*jer 3 python pip python-wheel

我知道我可以通过先写一个setup.py然后输入来创建一个轮子

python setup.py bdist_wheel
Run Code Online (Sandbox Code Playgroud)

如果我的轮子仅依赖于 pypi 中的包,我知道我可以通过执行以下操作来安装它们:

pip install mypkg.whl
Run Code Online (Sandbox Code Playgroud)

问题:如果我的轮子依赖于我的其他轮子,我可以让 pip 从文件夹自动安装它们吗?本质上使用文件夹作为穷人的私人pypi

更具体地说,如果pkg1我有一个setup.py

from setuptools import setup
setup(
    ...
    name = "pkg1",
    install_requires = ["requests"],
    ...
)
Run Code Online (Sandbox Code Playgroud)

而在pkg2我有:

from setuptools import setup
setup(
    ...
    name = "pkg2",
    install_requires = ["pkg1"],
    ...
)
Run Code Online (Sandbox Code Playgroud)

这将在安装时失败,因为 pip 会尝试pkg1在 pypi 中查找。是否可以告诉它只查看文件夹?

phd*_*phd 7

pip install --find-links /path/to/wheel/dir/ pkg2
Run Code Online (Sandbox Code Playgroud)

如果要完全禁用对 PyPI 的访问,请添加--no-index

pip install --no-index --find-links /path/to/wheel/dir/ pkg2
Run Code Online (Sandbox Code Playgroud)