我已经使用pip安装了Python软件包,该软件包可替代easy_install。如何获得与此软件包相关联的已安装文件的列表?

基本上,我正在寻找与

dpkg -L



rpm -ql

等效的Python软件包。 >

#1 楼

您可以使用以下命令执行此操作:

pip show -f <package>


评论


对我不起作用,pip:错误:没有按名称pip show的命令。 (使用点子1.1)

– Zitrax
13年2月2日,11:40

@Zitrax好吧,目前我正在使用pip 1.4.1,它可以工作,可能是您应该升级pip。

–邦尼克
2013年12月2日于16:54

是的,答案是这样的:stackoverflow.com/a/14060138/816449它在1.2.1.post1中起作用。

–邦尼克
2013年12月2日于16:58

看来这并不适用于所有包装。例如。 pip show -f nbconvert给出文件:无法找到安装文件.txt。

–亚历山大·考文垂(Alex Coventry)
16年5月27日在12:54

它对于使用python setup.py development安装的软件包也不起作用。

– akaihola
16 Dec 16'在8:23

#2 楼

我将virtualenv与pip一起使用,因此这里是我遵循的步骤。假设我在dave_venv虚拟环境中工作。

$ cat ~/.bashrc

export WORKON_HOME=/usr/local/virtualenvs

$ cd /usr/local/virtualenvs/dave_venv/lib/python2.6/site-packages
$ ls # This should show <your_package>.
$ cd <your_package>
$ ls # now you're looking at your package's files.


评论


在大多数情况下都可以使用,但是如果该软件包安装了任何命令行脚本(最终会出现在usr / local / bin中……),则无法运行。此外,某些软件包可能会安装多个模块...

– hwjp
2012年10月31日上午11:33

@hwjp您知道答案吗:查找哪个python程序包拥有二进制文件?

–汤姆·黑尔
19年4月27日在6:26



#3 楼

两年后,大多数pip实例都显示出来,但是,并非所有软件包都具有install-files.txt程序供子命令读取。

一种解决方法是启动python shell并执行以下操作:

>>> import eventlet
>>> eventlet.__path__
    ['/usr/lib/python2.7/dist-packages/eventlet']


其中“ eventlet”是我通过pip安装的软件包。