W3docs

Python PIP

Aprende a usar pip para instalar, actualizar y eliminar paquetes de Python, fijar versiones, exportar dependencias y evitar errores comunes.

pip es el gestor de paquetes integrado de Python. Descarga paquetes de PyPI (el índice de paquetes de Python) y los instala para que puedas importarlos con import en tu código. Si tienes Python 3.4 o posterior, pip ya está incluido — no necesitas instalarlo por separado.

Este capítulo cubre todo lo que necesitas para usar pip con confianza: comprobar la instalación, instalar y eliminar paquetes, fijar versiones, exportar dependencias y corregir errores comunes.

Comprobar la instalación de pip

Abre una terminal y ejecuta:

pip --version

Verás una salida similar a esta:

pip 24.0 from /usr/lib/python3/dist-packages/pip (python 3.12)

Si el comando no se encuentra, o si tienes varias versiones de Python, usa la forma python -m pip en su lugar — garantiza que estás ejecutando pip para el intérprete de Python que deseas:

python -m pip --version

Actualizar pip

pip publica nuevas versiones con frecuencia. Mantenlo actualizado para evitar advertencias del resolvedor:

python -m pip install --upgrade pip

Instalar paquetes

Instalación básica

pip install requests

pip descarga requests y todas sus dependencias desde PyPI y las instala en tu entorno Python activo. Tras la instalación puedes importar el paquete de inmediato.

Instalar una versión específica

Fija una versión exacta cuando la reproducibilidad es importante:

pip install requests==2.31.0

También puedes expresar rangos de versiones usando operadores de comparación:

pip install "requests>=2.28,<3.0"

Escribe siempre los rangos entre comillas en la terminal para evitar que < y > se interpreten como redirecciones.

Instalar desde un archivo de requisitos

Un archivo requirements.txt lista todos los paquetes que necesita un proyecto, uno por línea. Instala todos los paquetes del archivo con un solo comando:

pip install -r requirements.txt

Un requirements.txt típico tiene este aspecto:

requests==2.31.0
flask>=3.0,<4.0
sqlalchemy

Instalar en modo editable

Cuando estás desarrollando un paquete local y quieres que los cambios surtan efecto sin reinstalar, usa la opción -e:

pip install -e .

Esto enlaza el directorio del paquete directamente al entorno en lugar de copiar los archivos.

Instalar solo para el usuario actual

Si no tienes permiso para escribir en el directorio de Python del sistema y no estás usando un entorno virtual, añade --user:

pip install --user requests

El paquete se instala en tu directorio de inicio (~/.local/ en Linux/macOS). Esto es una alternativa de emergencia — usar un entorno virtual es casi siempre la mejor opción.

Listar e inspeccionar paquetes

Listar todos los paquetes instalados

pip list

Ejemplo de salida:

Package    Version
---------- -------
pip        24.0
requests   2.31.0
setuptools 69.0.3

Ver detalles de un paquete

pip show requests

La salida incluye versión, autor, licencia, ubicación de instalación y — lo más importante — qué requiere y qué lo requiere a él:

Name: requests
Version: 2.31.0
Summary: Python HTTP for Humans.
Home-page: https://requests.readthedocs.io
Author: Kenneth Reitz
License: Apache 2.0
Location: /usr/lib/python3/dist-packages
Requires: certifi, charset-normalizer, idna, urllib3
Required-by:

Comprobar conflictos de versiones

pip check

pip analiza todos los paquetes instalados e informa de cualquier requisito incompatible. Si todo está bien, el comando termina sin mostrar nada.

Actualizar y eliminar paquetes

Actualizar un paquete

pip install --upgrade requests

Esto instala la versión más reciente que satisface las restricciones existentes en tu entorno.

Actualizar todos los paquetes (sin comando integrado)

pip no tiene un único comando para actualizar todos los paquetes instalados. Una solución habitual usando pip list y xargs:

pip list --outdated --format=freeze | cut -d = -f 1 | xargs pip install --upgrade

Úsalo con cuidado en un entorno de proyecto — las actualizaciones masivas pueden introducir cambios incompatibles. Los archivos requirements.txt con versiones fijadas son una alternativa más segura.

Desinstalar un paquete

pip uninstall requests

pip pide confirmación antes de eliminar el paquete. Pasa -y para omitir la confirmación en scripts:

pip uninstall -y requests

Exportar dependencias

Congelar el entorno actual

pip freeze muestra todos los paquetes instalados con su versión exacta en un formato adecuado para un archivo requirements.txt:

pip freeze > requirements.txt

La salida tiene este aspecto:

certifi==2024.2.2
charset-normalizer==3.3.2
idna==3.6
requests==2.31.0
urllib3==2.2.1

Comparte requirements.txt con tus compañeros o inclúyelo en tu repositorio para que cualquiera pueda reproducir tu entorno con pip install -r requirements.txt.

pip y los entornos virtuales

Por defecto pip instala paquetes de forma global (o por usuario con --user). Esto causa problemas cuando dos proyectos necesitan versiones diferentes de la misma biblioteca.

La solución es un entorno virtual: una instalación aislada de Python que tiene su propio pip y su propio directorio site-packages. Cuando un entorno virtual está activo, pip install afecta únicamente a ese entorno.

# Create a virtual environment named .venv
python -m venv .venv

# Activate it (macOS / Linux)
source .venv/bin/activate

# Activate it (Windows)
.venv\Scripts\activate

# Now pip works inside the isolated environment
pip install requests

Consulta el capítulo Python Virtual Environments para el flujo de trabajo completo.

Obtener salida detallada

Cuando una instalación falla, el mensaje de error predeterminado puede ser críptico. Añade --verbose (o -v) para ver cada paso que da pip:

pip install --verbose requests

Añade -v dos veces (-vv) para obtener aún más detalles, incluidas las peticiones HTTP que pip hace a PyPI.

Errores comunes y soluciones

ErrorCausa probableSolución
command not found: pippip no está en el PATH o no está instaladoUsa python -m pip o instala pip mediante ensurepip
Permission deniedSin acceso de escritura al Python del sistemaAñade --user o activa un entorno virtual
Could not find a version that satisfies the requirementEl nombre del paquete es incorrecto o la versión no existeComprueba el nombre exacto en pypi.org
ResolutionImpossibleRequisitos de versión incompatibles entre paquetesUsa pip check para identificar conflictos; relaja las versiones fijadas
SSL certificate verify failedProxy corporativo o certificados desactualizadosActualiza tu paquete de CA o usa --trusted-host pypi.org

Tabla de referencia rápida

TareaComando
Comprobar la versión de pippip --version
Instalar un paquetepip install requests
Instalar una versión específicapip install requests==2.31.0
Instalar desde un archivo de requisitospip install -r requirements.txt
Actualizar un paquetepip install --upgrade requests
Desinstalar un paquetepip uninstall requests
Listar paquetes instaladospip list
Ver detalles de un paquetepip show requests
Exportar el entorno actualpip freeze > requirements.txt
Comprobar conflictospip check

Capítulos relacionados

  • Python Modules — comprende cómo Python importa código antes de instalar paquetes de terceros
  • Python Virtual Environments — aísla las dependencias del proyecto para que las instalaciones de pip nunca entren en conflicto

Práctica

Práctica
Which pip command exports all installed package versions to a file?
Which pip command exports all installed package versions to a file?
Was this page helpful?