Instalación de Python en Linux
¡Genial! Usas Linux. Eres oficialmente un usuario avanzado 🐧. La buena noticia es que Linux y Python se llevan muy bien.
¿Ya tienes Python?
La mayoría de las distribuciones de Linux vienen con Python preinstalado. Vamos a verificar:
python3 --version
Probablemente veas algo como:
Python 3.9.2
Si tienes Python 3.8 o superior, técnicamente puedes usarlo. Pero te recomiendo instalar la versión más reciente.
Instalación por distribución
Ubuntu/Debian y derivados 📦
Actualizar el sistema
sudo apt update
sudo apt upgrade
Instalar Python 3.11 (o la más reciente)
# Agregar el repositorio deadsnakes (para versiones más nuevas)
sudo apt install software-properties-common
sudo add-apt-repository ppa:deadsnakes/ppa
sudo apt update
# Instalar Python 3.11
sudo apt install python3.11 python3.11-venv python3.11-pip
# Instalar herramientas de desarrollo
sudo apt install python3.11-dev build-essential
Verificar la instalación
python3.11 --version
Fedora/CentOS/RHEL 🎩
Fedora (DNF)
# Actualizar el sistema
sudo dnf update
# Instalar Python 3.11
sudo dnf install python3.11 python3.11-pip python3.11-devel
# Herramientas de desarrollo
sudo dnf groupinstall "Development Tools"
CentOS/RHEL (YUM)
# Habilitar EPEL
sudo yum install epel-release
# Instalar Python 3.11
sudo yum install python311 python311-pip python311-devel
# Herramientas de desarrollo
sudo yum groupinstall "Development Tools"
Arch Linux/Manjaro 🏹
# Actualizar el sistema
sudo pacman -Syu
# Instalar Python
sudo pacman -S python python-pip
# Herramientas de desarrollo
sudo pacman -S base-devel
openSUSE 🦎
# Actualizar el sistema
sudo zypper refresh
sudo zypper update
# Instalar Python
sudo zypper install python311 python311-pip python311-devel
# Herramientas de desarrollo
sudo zypper install -t pattern devel_basis
Compilar desde código fuente (método universal)
Si tu distribución no tiene Python 3.11+ en los repositorios:
Paso 1: Instalar dependencias
Ubuntu/Debian:
sudo apt install build-essential zlib1g-dev libncurses5-dev libgdbm-dev libnss3-dev libssl-dev libreadline-dev libffi-dev libsqlite3-dev wget libbz2-dev
Fedora:
sudo dnf groupinstall "Development Tools"
sudo dnf install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel expat-devel
Paso 2: Descargar y compilar
# Descargar Python 3.11.5
cd /tmp
wget https://www.python.org/ftp/python/3.11.5/Python-3.11.5.tgz
tar -xf Python-3.11.5.tgz
cd Python-3.11.5
# Configurar la compilación
./configure --enable-optimizations --with-ensurepip=install
# Compilar (esto puede tomar un rato)
make -j 8
# Instalar
sudo make altinstall
Nota: Usamos
altinstall
en lugar deinstall
para no sobrescribir el Python del sistema.
Paso 3: Verificar
python3.11 --version
Configurar aliases y PATH
Crear aliases útiles
Edita tu archivo de configuración de shell:
Para Bash:
nano ~/.bashrc
Para Zsh:
nano ~/.zshrc
Agrega estas líneas:
alias python=python3.11
alias pip=pip3.11
Recarga la configuración:
source ~/.bashrc # o ~/.zshrc
Verificar pip
python3.11 -m pip --version
Si pip no está instalado:
# Ubuntu/Debian
sudo apt install python3.11-pip
# Fedora
sudo dnf install python3.11-pip
# Método universal
python3.11 -m ensurepip --upgrade
Entornos virtuales
En Linux es especialmente importante usar entornos virtuales para no interferir con el Python del sistema:
Instalar venv
# Ubuntu/Debian
sudo apt install python3.11-venv
# Fedora
sudo dnf install python3.11-venv
Crear un entorno virtual
python3.11 -m venv mi_entorno
source mi_entorno/bin/activate
Para desactivar:
deactivate
Problemas comunes en Linux
“python3.11: command not found”
Problema: Python no está en el PATH
Solución: Usa la ruta completa /usr/local/bin/python3.11
o crea un symlink
Problemas de permisos con pip
Problema: “Permission denied” al instalar paquetes
Solución: Usa --user
o entornos virtuales
pip3.11 install --user nombre_paquete
Falta librerías de desarrollo
Problema: Error al compilar paquetes Solución: Instala las herramientas de desarrollo mencionadas arriba
Conflicto con Python del sistema
Problema: Múltiples versiones de Python
Solución: Usa versiones específicas (python3.11
) y entornos virtuales
Gestión avanzada con pyenv
Para manejar múltiples versiones de Python fácilmente:
Instalar pyenv
# Clonar pyenv
git clone https://github.com/pyenv/pyenv.git ~/.pyenv
# Configurar PATH
echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.bashrc
echo 'command -v pyenv >/dev/null || export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.bashrc
echo 'eval "$(pyenv init -)"' >> ~/.bashrc
# Recargar
source ~/.bashrc
Usar pyenv
# Ver versiones disponibles
pyenv install --list
# Instalar Python 3.11.5
pyenv install 3.11.5
# Usar globalmente
pyenv global 3.11.5
# Verificar
python --version
Verificación final
Crea un archivo de prueba:
# Crear el archivo
cat > prueba.py << EOF
print("¡Python funciona perfectamente en Linux!")
import sys
print(f"Versión de Python: {sys.version}")
print(f"Ubicación de Python: {sys.executable}")
print(f"Distribución: {sys.platform}")
EOF
# Ejecutar
python3.11 prueba.py
Comandos útiles para Linux
# Verificar versión
python3.11 --version
# Verificar ubicación
which python3.11
# Ver información del sistema
python3.11 -c "import sys; print(sys.version_info)"
# Instalar paquete para el usuario
pip3.11 install --user paquete
# Crear entorno virtual
python3.11 -m venv nombre_entorno
# Activar entorno virtual
source nombre_entorno/bin/activate
# Ver paquetes instalados
pip3.11 list
Distribuciones específicas
WSL (Windows Subsystem for Linux)
Si usas WSL, sigue las instrucciones de Ubuntu/Debian. Todo funciona igual.
Raspberry Pi OS
sudo apt update
sudo apt install python3.11 python3.11-pip python3.11-venv
Alpine Linux
apk add python3 py3-pip
Siguiente paso
Ahora que tienes Python funcionando en Linux, es hora de elegir un buen editor de código.
👉 Continúa con: Editores e IDEs Recomendados
🐧 Resumen para Linux: Usa el gestor de paquetes de tu distribución, considera compilar desde fuente para versiones más nuevas, y siempre usa entornos virtuales para proyectos.