pyenv es una herramienta poderosa para gestionar múltiples versiones de Python. Incluso si ya tienes Python instalado, pyenv te permite probar nuevas funcionalidades del lenguaje o contribuir a proyectos que usen versiones específicas.
Lectura recomendada: Instalación de virtualenv + virtualenvwrapper en Unix/Linux
Nota sobre permisos: Algunos comandos requieren permisos de superusuario. Cuando sea necesario, usa
sudo
antes del comando (por ejemplo,sudo apt-get install ...
).
Instalación en CentOS/Fedora/RedHat
Habilita el repositorio EPEL (requiere permisos de superusuario):
dnf install epel-release
Instala los paquetes necesarios (requiere sudo
):
dnf install zlib-devel bzip2 bzip2-devel readline-devel sqlite sqlite-devel openssl-devel xz xz-devel libffi-devel
Instala pyenv con el script oficial:
cd /usr/local/src && curl -L https://github.com/pyenv/pyenv-installer/raw/master/bin/pyenv-installer | bash
Configura pyenv tras la instalación.
Instalación en Debian/Ubuntu
Instala los paquetes necesarios (requiere sudo
):
apt-get install -y make build-essential libssl-dev zlib1g-dev libbz2-dev libreadline-dev libsqlite3-dev wget curl llvm libncurses5-dev libncursesw-dev xz-utils tk-dev libffi-dev liblzma-dev python3-openssl
Instala pyenv:
cd /usr/local/src && curl -L https://github.com/pyenv/pyenv-installer/raw/master/bin/pyenv-installer | bash
Configura pyenv tras la instalación.
Instalación en macOS
Instala Homebrew si no lo tienes.
Busca el paquete pyenv:
brew search pyenv
Instala pyenv:
brew install pyenv
Configuración de pyenv en Unix/Linux
Edita el archivo ~/.bashrc
:
vim ~/.bashrc
Añade al final:
export PYENV_ROOT="${HOME}/.pyenv"
if [ -d "${PYENV_ROOT}" ]; then
export PATH="${PYENV_ROOT}/bin:${PATH}"
eval "$(pyenv init -)"
eval "$(pyenv virtualenv-init -)"
fi
Carga el perfil para aplicar los cambios:
Para sistemas basados en RPM (CentOS/Fedora/RedHat):
source ~/.bash_profile
Para sistemas basados en DEB (Debian/Ubuntu):
source ~/.profile
Para macOS:
source ~/.zshrc
Nota: En macOS, si usas Zsh (predeterminado desde macOS Catalina), usa ~/.zshrc
en lugar de ~/.bash_profile
.
Uso de pyenv en Unix/Linux
Lista las versiones de Python disponibles:
pyenv install -l
Instala versiones específicas (por ejemplo, 3.12.7 y 3.13.0):
pyenv install 3.12.7
pyenv install 3.13.0
Verifica las versiones instaladas:
pyenv versions
Salida esperada:
* system
3.12.7
3.13.0
Establece una versión local para un proyecto:
pyenv local 3.12.7
O usa múltiples versiones:
pyenv local 3.12.7 3.13.0
Establece una versión global:
pyenv global 3.13.0
Establece una versión para la shell actual:
pyenv shell 3.12.7

Crea un entorno virtual:
pyenv virtualenv 3.12.7 mi-proyecto-con-3.12.7
Lista los entornos virtuales:
pyenv virtualenvs
Activa un entorno virtual:
pyenv activate mi-proyecto-con-3.12.7
Desactiva el entorno virtual:
pyenv deactivate
Verifica la versión de Python activa:
python -V
Salida esperada:
Python 3.12.7
Comprueba la ubicación de Python:
which python
Salida esperada:
/home/usuario/.pyenv/shims/python
Y:
pyenv which python
Salida esperada:
/home/usuario/.pyenv/versions/mi-proyecto-con-3.12.7/bin/python
Comandos útiles
Lista todos los comandos de pyenv:
pyenv commands
Obtén ayuda general:
pyenv --help
Obtén ayuda para un comando específico:
pyenv activate --help
Mantenimiento
Desinstala una versión de Python:
pyenv uninstall 3.12.7
Actualiza pyenv:
pyenv update
Elimina pyenv completamente:
rm -rf ~/.pyenv
Elimina las líneas de configuración de ~/.bashrc
o ~/.zshrc
:
export PATH="$HOME/.pyenv/bin:$PATH"
eval "$(pyenv init -)"
eval "$(pyenv virtualenv-init -)"
Notas finales
- $PYENV_ROOT está configurado por defecto en
~/.pyenv
. - Verifica la documentación oficial en: https://github.com/pyenv/pyenv#readme
¡Y eso es todo! La guía Instalación de pyenv en Unix/Linux ha finalizado.
¿Qué te parece?
Es bueno conocer tu opinión. Deja un comentario.