将软件包复制为站点软件包,但pip未列出。如何让pip知道已安装的软件包?

时间:2018-11-12 01:52:17

标签: python pip

我必须手动构建一个程序包并将其复制到site-packages目录。当我在控制台中输入pip list时,它没有列出,尽管我可以在python脚本中使用它。我如何使该点子知道该包裹?

不能通过pip安装它。

1 个答案:

答案 0 :(得分:1)

您说“不能通过pip安装它。”,但我假设仍然可以使用本地副本通过pip安装它。如果是这样,执行此操作的方法是将库克隆到目录(例如/my/lib/dir)中,其中根软件包的源根出现在/my/lib/dir下方(例如:如果您要的软件包要安装的安装导入为import foo,则您应该拥有/my/lib/dir/foo)。如果代码副本中没有名为setup.py的文件,则需要创建一个简单的文件。像

# in a file called setup.py above the `foo` directory
from distutils.core import setup

setup(name='foo',
      version='1.0',
      packages=['foo'],
 )

最后,从pip install .运行/my/lib/dir

这绝对是一个hack,但是让pip知道一个软件包而不通过pip安装它就是一个hack:-)