- 1 1. Introducción
- 2 2. Cómo obtener la lista de paquetes (por comando)
- 3 3. Cómo comprobar la versión dentro del script
- 4 4. Visualización de dependencias: pipdeptree
- 5 5. Entorno virtual y verificación de paquetes
- 6 6. Resumen
- 7 7. Frequently Asked Questions (FAQ)
- 7.1 Q1. ¿Cómo puedo verificar todos los paquetes instalados en Python de una sola vez?
- 7.2 Q2. ¿Cómo consultar solo la versión de un paquete específico?
- 7.3 Q3. ¿Cómo ver las dependencias de los paquetes en forma de árbol?
- 7.4 Q4. ¿Cambia el método de verificación en entornos virtuales o Anaconda (conda)?
- 7.5 Q5. ¿También se puede consultar la información de licencia?
- 7.6 Q6. ¿Qué hacer si el comando pip no funciona correctamente?
- 7.7 Q7. ¿Cómo guardar la información de los paquetes en un archivo?
1. Introducción
Al usar Python para desarrollo y análisis de datos, a menudo surgen preguntas como «¿Qué paquetes están instalados ahora?», «¿Cuál es la versión de cada uno?». En particular, cuando se trabaja en un equipo de desarrollo o se vuelve a ejecutar un proyecto antiguo después de mucho tiempo, verificar los paquetes instalados es una tarea indispensable.
Sin embargo, existen varios métodos para gestionar paquetes de Python, y si no está familiarizado, puede resultar confuso decidir qué comando usar. En este artículo, para responder a la necesidad de «verificar paquetes de Python», explicaremos de manera clara para principiantes cómo obtener la lista de paquetes y sus versiones usando principalmente el comando pip, así como herramientas para visualizar dependencias.
También abordaremos los métodos de verificación adecuados para diferentes entornos de desarrollo, como entornos virtuales y Anaconda. Este contenido será útil tanto para quienes desean comenzar a usar Python de forma intensiva como para ingenieros que lo utilizan a diario, así que les invitamos a leer hasta el final.
2. Cómo obtener la lista de paquetes (por comando)
Si deseas ver la lista de paquetes instalados y sus versiones en Python, normalmente se usa el comando “pip”. Aquí explicamos en detalle cómo usar los comandos representativos y sus ejemplos de salida.
2.1 Cómo usar pip list
El método más básico es escribir el siguiente comando en la terminal o el símbolo del sistema.
pip list
Al ejecutar este comando, se muestra una lista con los nombres de todos los paquetes instalados en el entorno Python actual y sus versiones. Por ejemplo, se obtiene la siguiente salida.
Package Version
------------ -------
numpy 1.26.4
pandas 2.2.2
requests 2.31.0
Opciones principales:
--outdated
Muestra solo los paquetes que pueden actualizarse.
pip list --outdated
--not-required
Muestra solo los paquetes que no son requeridos por otros paquetes (no son dependencias).
pip list --not-required
--format=columns|freeze|json
Permite especificar el formato de salida. Por ejemplo, para obtener la salida en formato JSON, se hace lo siguiente.
pip list --format=json
2.2 Cómo usar pip freeze
pip freeze
es similar a pip list
, pero genera la información de los paquetes en un formato utilizable en archivos como “requirements.txt” (package==version).
pip freeze
Como ejemplo, la salida es la siguiente.
numpy==1.26.4
pandas==2.2.2
requests==2.31.0
Este formato es especialmente útil cuando se desea reproducir la misma configuración de paquetes en otro entorno (reconstrucción o compartición del entorno).
Además, se puede guardar en un archivo con el siguiente comando.
pip freeze > requirements.txt
2.3 Cómo usar pip show
Si deseas obtener información más detallada sobre un paquete específico, usa el comando pip show
.
pip show nombre_del_paquete
Por ejemplo, para investigar los detalles del paquete requests, ejecuta lo siguiente.
pip show requests
Ejemplo de salida (parte):
Name: requests
Version: 2.31.0
Summary: Python HTTP for Humans.
Home-page: https://requests.readthedocs.io
Author: Kenneth Reitz
Location: /usr/local/lib/python3.11/site-packages
Requires:
Required-by:
De esta manera, puedes verificar la descripción del paquete, su página web, dependencias, ubicación de instalación, entre otra información.
Al combinar estos comandos según la situación, puedes gestionar los paquetes de manera óptima.
3. Cómo comprobar la versión dentro del script
Dentro de un script de Python, a veces también se desea verificar directamente la versión de los paquetes instalados. En particular, es útil para la verificación del funcionamiento del programa, la detección de diferencias en el entorno y al describir procesos dependientes de la versión. Aquí, introduciremos métodos representativos de verificación.
3.1 Utilizar el atributo version
Muchos paquetes de Python tienen definido un atributo llamado __version__
. Al utilizar esto, se puede obtener fácilmente el número de versión desde dentro del código.
Ejemplo: Al mostrar la versión de NumPy
import numpy
print(numpy.__version__)
Al escribirlo de esta manera, se mostrará la versión de NumPy (por ejemplo: 1.26.4).
3.2 Nota: cuando version no está definido
No todos los paquetes tienen disponible el atributo __version__
. En particular, en bibliotecas pequeñas o paquetes antiguos, puede que no esté definido. En ese caso, se debe consultar la documentación oficial o probar los siguientes métodos.
3.3 Usar importlib.metadata (Python 3.8 o superior)
Si es Python 3.8 o superior, se puede obtener la información de versión de los paquetes instalados usando la biblioteca estándar importlib.metadata
(o instalando importlib_metadata
en versiones 3.7 o anteriores).
Ejemplo: Al obtener la versión de pandas
from importlib.metadata import version
print(version("pandas"))
Este método es fácil de usar incluso con paquetes que no tienen el atributo __version__
, por lo que se recomienda como una forma moderna de escribirlo.
3.4 Ejemplos de uso en la práctica
- Ramificar el procesamiento según la versión
- Mostrar una advertencia si está fuera del rango de versiones soportadas
Ejemplo: Verificación de versión
import sys
from importlib.metadata import version
if version("numpy") < "1.20.0":
sys.exit("Se requiere NumPy 1.20.0 o superior. Por favor, verifique la versión.")
De esta manera, saber métodos para verificar flexiblemente la versión dentro del script ayuda en la prevención de problemas de entorno y en la mejora de la calidad.
4. Visualización de dependencias: pipdeptree
Cuando un proyecto de Python crece, se llega a un estado en el que múltiples paquetes dependen mutuamente unos de otros. Cuando las dependencias se vuelven complejas, se hace difícil entender «¿qué paquete necesita cuál?», lo que complica las actualizaciones y la resolución de problemas. En tales situaciones, la herramienta llamada «pipdeptree» resulta útil.
4.1 Qué es pipdeptree
pipdeptree
es una herramienta de línea de comandos que muestra las dependencias de los paquetes Python instalados en forma de árbol. Esto permite ver de un vistazo la relación entre paquetes, lo que es útil para descubrir paquetes innecesarios o conflictos.
4.2 Cómo instalar pipdeptree
Primero, instálalo con pip: pipdeptree
.
pip install pipdeptree
4.3 Uso básico
Después de la instalación, puedes verificar las dependencias en formato de árbol con el siguiente comando.
pipdeptree
Ejemplo de salida (parcial):
pandas==2.2.2
- numpy [required: >=1.24.0,<2.0.0, installed: 1.26.4]
- python-dateutil [required: >=2.8.2, installed: 2.8.2]
- six [required: >=1.5, installed: 1.16.0]
- pytz [required: >=2020.1, installed: 2023.3]
De esta manera, se puede ver en niveles qué paquetes dependen de cuáles.
4.4 Opciones más usadas
-r
(modo inverso):
Muestra los paquetes superiores que requieren el paquete especificado.
pipdeptree -r
--warn fail/warn/silence
: Controla la visualización de advertencias cuando existen problemas de dependencias (conflictos, etc.).--json
: Produce la salida en formato JSON, facilitando la integración con otras herramientas.
4.5 Aplicación: Obtención de información de licencias y gestión de paquetes
pipdeptree
no solo ayuda a comprender las dependencias, sino que también es útil para eliminar paquetes innecesarios y resolver conflictos entre paquetes. Puede usarse para la limpieza del proyecto y para investigaciones de seguridad y licencias, por lo que se recomienda aprender a usarlo.
Si sientes que las dependencias se han complicado, verifica una vez la visión general con pipdeptree
.
En la siguiente sección, introduciremos métodos para verificar paquetes en entornos virtuales y entornos conda.
5. Entorno virtual y verificación de paquetes
En el desarrollo con Python, se utilizan frecuentemente entornos virtuales (como venv o virtualenv) y Anaconda (entorno conda). Como los paquetes instalados varían según cada entorno, es importante comprender correctamente “qué está instalado y en qué entorno en este momento”. Aquí se presentan los métodos para verificar los paquetes en entornos virtuales y entornos conda.
5.1 En caso de entornos virtuales (venv, virtualenv)
Con el entorno virtual activado, al usar los comandos pip list
, pip freeze
y pip show
que se presentaron anteriormente, solo se mostrará la información de los paquetes dentro de ese entorno virtual。
【Flujo básico del entorno virtual】
- Creación del entorno virtual
python -m venv myenv
- Activación del entorno virtual (en Windows)
myenvScriptsactivate
(en macOS/Linux)
source myenv/bin/activate
- Verificación de la lista de paquetes
pip list
De esta manera, se puede gestionar de forma segura la configuración de paquetes distinta para cada proyecto.

5.2 En caso de entorno conda
Si se utilizan Anaconda o Miniconda, es habitual usar el comando conda
para la gestión de paquetes.
- Activación del entorno conda
conda activate myenv
- Verificación de la lista de paquetes
conda list
Al ejecutar conda list
, se mostrará una lista de todos los paquetes y sus versiones instalados en ese entorno.
Además, se puede verificar un paquete específico de la siguiente manera.
conda list nombre_del_paquete
5.3 Puntos a considerar
- Tenga cuidado al ejecutar comandos sin activar el entorno virtual o conda, ya que se mostrarán los paquetes del entorno global.
- Separar los entornos por proyecto ayuda a prevenir conflictos de paquetes y fallos de funcionamiento.
De esta manera, al gestionar correctamente los paquetes por entorno y poder verificarlos cuando sea necesario, el desarrollo en Python será más cómodo.
6. Resumen
Al desarrollar en Python, comprender los paquetes instalados y sus versiones es muy importante desde el punto de vista de la gestión de proyectos y la prevención de problemas. En este artículo, explicamos de manera sistemática los métodos para verificar paquetes, útiles para principiantes y usuarios intermedios.
Primero, usando comandos básicos como «pip list», «pip freeze» y «pip show», se pueden obtener fácilmente la lista de paquetes y su información detallada. Además, se mostró cómo usar el atributo __version__
y importlib.metadata
dentro de un script para verificar la versión de un paquete específico desde el programa.
Además, cuando las dependencias entre paquetes son complejas, se puede utilizar «pipdeptree» para visualizar la estructura en forma de árbol y comprender mejor el panorama general. Asimismo, en entornos virtuales o conda, se pueden usar los comandos específicos de cada entorno para gestionar con precisión la información de los paquetes.
Al combinar estas técnicas, la gestión de paquetes se vuelve más eficiente y segura. En particular, en proyectos con varios desarrolladores o sistemas que requieren mantenimiento a largo plazo, la verificación periódica de los paquetes ayuda a prevenir problemas.
Le invitamos a aprovechar los comandos y herramientas presentados, y a crear un entorno de desarrollo Python más cómodo.
7. Frequently Asked Questions (FAQ)
En esta sección, hemos resumido las preguntas más frecuentes y sus respuestas sobre la verificación de paquetes de Python. Consúltelo como referencia cuando tenga problemas o necesite información.
Q1. ¿Cómo puedo verificar todos los paquetes instalados en Python de una sola vez?
pip list
pip freeze
Al ejecutar
pip list
o
pip freeze
, se mostrará una lista de todos los paquetes instalados y sus versiones.
Q2. ¿Cómo consultar solo la versión de un paquete específico?
pip show nombre_paquete
Con
pip show nombre_paquete
, se puede obtener información detallada del paquete especificado.
También, dentro de un script de Python, puede escribir
import nombre_paquete
print(nombre_paquete.__version__)
para imprimir la versión (aunque algunos paquetes no disponen del atributo __version__
).
Q3. ¿Cómo ver las dependencias de los paquetes en forma de árbol?
pipdeptree
Instale la herramienta y ejecute
pipdeptree
para ver las dependencias de los paquetes instalados en una estructura de árbol.
Q4. ¿Cambia el método de verificación en entornos virtuales o Anaconda (conda)?
Si el entorno virtual está activado, al usar pip list
o pip freeze
solo se mostrarán los paquetes instalados en ese entorno.
En el caso de Anaconda/Miniconda,
conda list
Q5. ¿También se puede consultar la información de licencia?
Con pip show nombre del paquete
, algunos paquetes muestran la información de licencia. Además, combinando pipdeptree
con otras herramientas externas, es posible realizar una verificación masiva de licencias.
Q6. ¿Qué hacer si el comando pip no funciona correctamente?
A menudo ocurre que Python o el propio pip no están instalados, o que hay problemas con la configuración del PATH.
- Intente ejecutar
python -m pip list
añadiendo «python -m». - Actualización de pip (
python -m pip install --upgrade pip
) - Verifique que el entorno virtual o el entorno Anaconda estén activados correctamente. Intente estas acciones.
Q7. ¿Cómo guardar la información de los paquetes en un archivo?
pip freeze > requirements.txt
Ejecutando el comando
pip freeze > requirements.txt
, se puede guardar la lista actual de paquetes en un archivo.