Como faço para listar os arquivos associados a um pacote Python instalado usando pip ou easy_install?


67

Instalei um pacote Python usando o pip, que substitui o easy_install. Como obtenho uma lista de quais arquivos instalados estão associados a este pacote?

Basicamente, estou procurando o pacote Python equivalente a

dpkg -L

ou

rpm -ql

Respostas:


89

Você pode fazer isso usando o comando:

pip show -f <package>

Não funciona para mim pip: error: No command by the name pip show. (Usando pip 1.1)
Zitrax 2/13/13

@ Zitrax Bem, atualmente estou usando o pip 1.4.1 e funciona, pode ser que você deva atualizar o pip.
Bunyk

Sim, aqui está a resposta para isso: stackoverflow.com/a/14060138/816449 Ele funciona em 1.2.1.post1.
Bunyk

11
Parece que isso não funciona para todos os pacotes. Por exemplo, pip show -f nbconvertFiles: Cannot locate installed-files.txt.
Alex Coventry

Também não funciona para pacotes instalados usando python setup.py develop.
akaihola

4

Eu uso o virtualenv com pip, então aqui estão os passos que sigo. Suponha que eu esteja trabalhando no dave_venvambiente virtual.

$ 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.

11
funciona na maioria dos casos, mas não se o pacote instala todos os scripts de linha de comando, que iria acabar em usr / local / bin .... também, alguns pacotes podem instalar vários módulos ...
hwjp

@hwjp Você sabe a resposta para: Encontre qual pacote python possui um binário ?
Tom Hale

2

Dois anos depois, a maioria das instâncias pip mostra, no entanto, nem todos os pacotes possuem o programa installed-files.txt para o subcomando ler.

Uma solução alternativa é acionar o shell python e fazer o seguinte:

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

onde "eventlet" é o pacote que instalei com o pip.

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.