Cuando se instala Python de esta manera suele pasar que al ejecutarlo no ejecuta la versión actualizada; es más, antes uno estaba acostumbrado a poner el comando python y de una se ejecutaba la última versión, ahora hay que especificar en el comando la versión del python. O sea, si quiere ejecutar la 3.10 hay que poner el comando python3, y así con cada versión.
Cuando instalo y configuro python, por lo general recomiendo hacer lo siguiente (que no es muy diferente a lo de la clase, varían unas cosas):
- Instalamos software-properties:
Este software proporciona una abstracción de los repositorios apt que deseemos utilizar para gestionar de forma fácil la distribución y proveedores de software.
Comando:
sudo apt install software-properties-common
Nota: Hay que estar pendiente de que no aparezcan paquetes sin actualizar, de aparecer, los podemos buscar utilizando sudo apt-get upgrade aquí aparecerán los nombres de los paquetes que no se actualizaron y solo es hacerlo manualmente aplicando el comando: sufo apt-get upgrade <nombre_del_paquete>.
- Añadir PPA:
Los PPA son repositorios de software donde la comunidad puede subir paquetes fuentes ara ser construidos o publicados como APT para launchpad.
Comando:
sudo add-apt-repository ppa:deadsnakes/ppa
- Validar e instalar:
Validamos en la página de Python la última versión, con el fin de saber cuál instalar.
Página:
Si la versión tiene 3 grupos de números, como el anterior, que tiene 3.12.1 solo utilizaremos los dos primeros, o sea: 3.12
Ejecutamos el comando:
sudo apt install python3.12
- Ejecutar Python:
(Pausa para explicación)
Por lo general cuando se instala de esta manera y se quiere ejecutar, debemos especificar la versión de Python para que así se ejecute. Si escribimos solo la palabra Python puede que nos aparezca un error especificando que el comando no funciona y recomendando el comando a utilizar, cómo aparece a continuación:
En el anterior mensaje nos dice que debemos usar es el comando Python3, pero puede surgir otro inconveniente y es que, al ponerlo, pueda que se ejecute la versión que tiene Linux por defecto, más no a última versión.
Ejemplo:
La última versión que se instaló fue la 3.12.1, pero se ejecuta la 3.10.12.
Una solución es usar una alternativa de actualización y establecer la versión de Python que se desea usar de forma automática.
Creando Alternativas
- Validar las versiones instaladas:
Para validar que la instalación de Python si se ejecutó, ponemos el comando:
ls -l /usr/bin/python*
Al usar el comando podemos ver las versiones que están instaladas en WSL.
En la imagen podemos ver que python3 apunta a la versión 3.10 y no a la 3.12 que está de último.
- Ruta de interprete
Como ya se sabe las versiones instaladas, en el ejemplo son la 3.10 y la 3.12, buscamos las rutas de interprete de cada versión. Tener en cuenta las rutas
El comando hay aplicarlo para cada versión:
Comando:
which python3.10 ->Versión por defecto en mi distro
output:
which python3.12 -> Versión a la que actualicé
output:
- Crear alternativas
Vamos a crear una nueva ruta de forma alternativa donde la llamaremos python y donde alojaremos las rutas anteriores, a cada una se le asignara una prioridad
Hay que hacer el comando con cada versión:
Comando:
Para la versión por defecto (solo cambia la versión del python a la que tiene usted por defecto, el resto es igual):
sudo update-alternatives --install /usr/local/bin/python python /usr/bin/python3.10 20
Debe aprecer un mensaje como este:
Comando:
Para la versión a la que se actualizó (debe solo cambiar el número de la versión que actualizó, el resto es igual):
sudo update-alternatives --install /usr/local/bin/python python /usr/bin/python3.12 40
debe aparecer un mensaje igual que el anterior.
Nota: los números 20 y 40 hacen referencia a las prioridades asignadas.
- Validar alternativas:
Con este comando lo que se busca es actualizar y validar que las prioridades y alternativas se hayan creado correctamente.
Comando:
update-alternatives --query python
Debe aparecer algo como esto:
- Ahora validamos la versión de python
Comando:
python -V
Si lo anterior se hizo bien, debe aparecer la última versión a la que actualizó:
- Ejecutando Python
Lo mejor es que ahora para ejecutar Python no es necesario especificar la versión, simplemente escribiendo el comando python debe ejecutarse la versión instalada.