mac - ¿Cómo enumerar todos los paquetes instalados y sus versiones en Python?
pip uninstall package (8)
¡sí! deberías usar pip como tu administrador de paquetes python ( http://pypi.python.org/pypi/pip )
con paquetes instalados en pip, puedes hacer una
pip freeze
y enumerará todos los paquetes instalados. Probablemente también deberías estar usando virtualenv y virtualenvwrapper . Cuando comienzas un nuevo proyecto, puedes hacer
mkvirtualenv my_new_project
y luego (dentro de ese virtualenv), hacer
pip install all_your_stuff
De esta forma, puede workon my_new_project
y luego pip freeze
para ver qué paquetes están instalados para ese virtualenv / proyecto.
por ejemplo:
➜ ~ mkvirtualenv yo_dude
New python executable in yo_dude/bin/python
Installing setuptools............done.
Installing pip...............done.
virtualenvwrapper.user_scripts creating /Users/aaylward/dev/virtualenvs/yo_dude/bin/predeactivate
virtualenvwrapper.user_scripts creating /Users/aaylward/dev/virtualenvs/yo_dude/bin/postdeactivate
virtualenvwrapper.user_scripts creating /Users/aaylward/dev/virtualenvs/yo_dude/bin/preactivate
virtualenvwrapper.user_scripts creating /Users/aaylward/dev/virtualenvs/yo_dude/bin/postactivate
virtualenvwrapper.user_scripts creating /Users/aaylward/dev/virtualenvs/yo_dude/bin/get_env_details
(yo_dude)➜ ~ pip install django
Downloading/unpacking django
Downloading Django-1.4.1.tar.gz (7.7Mb): 7.7Mb downloaded
Running setup.py egg_info for package django
Installing collected packages: django
Running setup.py install for django
changing mode of build/scripts-2.7/django-admin.py from 644 to 755
changing mode of /Users/aaylward/dev/virtualenvs/yo_dude/bin/django-admin.py to 755
Successfully installed django
Cleaning up...
(yo_dude)➜ ~ pip freeze
Django==1.4.1
wsgiref==0.1.2
(yo_dude)➜ ~
o si tiene un paquete python con un archivo requirements.pip,
mkvirtualenv my_awesome_project
pip install -r requirements.pip
pip freeze
hará el truco
¿Hay alguna manera en Python para listar todos los paquetes instalados y sus versiones?
Sé que puedo entrar en python/Lib/site-packages
y ver qué archivos y directorios existen, pero esto me parece muy incómodo. Lo que estoy buscando es algo similar a la npm list
[1] .
Aquí hay una manera de hacerlo utilizando PYTHONPATH
lugar de la ruta absoluta de su libs dir de python:
for d in `echo "${PYTHONPATH}" | tr '':'' ''/n''`; do ls "${d}"; done
[ 10:43 Jonathan@MacBookPro-2 ~/xCode/Projects/Python for iOS/trunk/Python for iOS/Python for iOS ]$ for d in `echo "$PYTHONPATH" | tr '':'' ''/n''`; do ls "${d}"; done
libpython2.7.dylib pkgconfig python2.7
BaseHTTPServer.py _pyio.pyc cgitb.pyo doctest.pyo htmlentitydefs.pyc mimetools.pyc plat-mac runpy.py stringold.pyc traceback.pyo
BaseHTTPServer.pyc _pyio.pyo chunk.py dumbdbm.py htmlentitydefs.pyo mimetools.pyo platform.py runpy.pyc stringold.pyo tty.py
BaseHTTPServer.pyo _strptime.py chunk.pyc dumbdbm.pyc htmllib.py mimetypes.py platform.pyc runpy.pyo stringprep.py tty.pyc
Bastion.py _strptime.pyc chunk.pyo dumbdbm.pyo htmllib.pyc mimetypes.pyc platform.pyo sched.py stringprep.pyc tty.pyo
Bastion.pyc _strptime.pyo cmd.py
....
Puedes intentar: yema
Para la yema de instalación, intente:
easy_install yolk
Yolk es una herramienta de Python para obtener información sobre paquetes de Python instalados y consultar paquetes disponibles en PyPI (Python Package Index).
Puede ver qué paquetes están activos, no activos o en modo de desarrollo y mostrarle las versiones más nuevas disponibles mediante la consulta de PyPI.
Si desea obtener información sobre las distribuciones de python instaladas y no desea usar su consola o terminal de cmd para ello, sino a través de un código de Python, puede usar el siguiente código (probado con Python 3.4):
import pip #needed to use the pip functions
for i in pip.get_installed_distributions(local_only=True):
print(i)
La pip.get_installed_distributions(local_only=True)
devuelve un iterable y, debido a for-loop y la función de impresión, los elementos contenidos en el iterable se imprimen separados por nuevos caracteres de línea ( /n
). El resultado (en función de las distribuciones instaladas) será similar a este:
cycler 0.9.0
decorator 4.0.4
ipykernel 4.1.0
ipython 4.0.0
ipython-genutils 0.1.0
ipywidgets 4.0.3
Jinja2 2.8
jsonschema 2.5.1
jupyter 1.0.0
jupyter-client 4.1.1
#... and so on...
Si estás usando anaconda:
conda list
¡lo haré! Ver: https://conda.io/docs/_downloads/conda-cheatsheet.pdf
Si tiene la instalación de pip y desea ver qué paquetes se han instalado con sus herramientas de instalación, simplemente puede llamar a esto:
pip freeze
También incluirá números de versión para los paquetes instalados.
Actualizar
pip se ha actualizado para que también produzca el mismo resultado que el pip freeze
llamando a:
pip list
Nota
El resultado de la pip list
tiene un formato diferente, por lo que si tiene un script de shell que analiza el resultado (tal vez para obtener el número de versión) y desea cambiar el script a la list
llamadas, tendrá que cambiar el código de análisis.
desde línea de comando
python -c help(''modules'')
se puede usar para ver todos los módulos y para módulos específicos
python -c help(''os'')
Para Linux a continuación funcionará
python -c "help(''os'')"
help(''modules'')
debería hacerlo por usted.
en IPython:
In [1]: import #import press-TAB
Display all 631 possibilities? (y or n)
ANSI audiodev markupbase
AptUrl audioop markupsafe
ArgImagePlugin avahi marshal
BaseHTTPServer axi math
Bastion base64 md5
BdfFontFile bdb mhlib
BmpImagePlugin binascii mimetools
BufrStubImagePlugin binhex mimetypes
CDDB bisect mimify
CDROM bonobo mmap
CGIHTTPServer brlapi mmkeys
Canvas bsddb modulefinder
CommandNotFound butterfly multifile
ConfigParser bz2 multiprocessing
ContainerIO cPickle musicbrainz2
Cookie cProfile mutagen
Crypto cStringIO mutex
CurImagePlugin cairo mx
DLFCN calendar netrc
DcxImagePlugin cdrom new
Dialog cgi nis
DiscID cgitb nntplib
DistUpgrade checkbox ntpath