24 votos

¿Por qué Python 2.7 sigue siendo la versión predeterminada de Python en Ubuntu?

De acuerdo a la documentación oficial de Python, Python2.7 apoyo de final de la cerca en el futuro.

AMORTIZACIÓN: Python 2.7 alcance el final de su vida el 1 de enero de 2020. Por favor actualiza tu Python Python 2.7 no se mantiene después de esa fecha. Una versión futura de pip se abandonará el soporte para Python 2.7. Más detalles acerca de Python 2 apoyo en el pip, se puede encontrar en https://pip.pypa.io/en/latest/development/release-process/#python-2-support

¿Por qué es Ubuntu no usa Python3 como predeterminado en su próxima versión?

$ cat /etc/os-release 
NAME="Ubuntu"
VERSION="19.04 (Disco Dingo)"
ID=ubuntu
ID_LIKE=debian
PRETTY_NAME="Ubuntu 19.04"
VERSION_ID="19.04"
HOME_URL="https://www.ubuntu.com/"
SUPPORT_URL="https://help.ubuntu.com/"
BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/"
PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy"
VERSION_CODENAME=disco
UBUNTU_CODENAME=disco
$ python
Python 2.7.16 (default, Apr  6 2019, 01:42:57) 
[GCC 8.3.0] on linux2
Type "help", "copyright", "credits" or "license" for more information.

37voto

Aman Mittal Puntos 111

De acuerdo a las notas de lanzamiento de Bionic Beaver:

Python 2 ya no está instalado de forma predeterminada. Python 3 ha sido actualizado a la 3.6. Esta es la última LTS de liberación para incluir Python 2 en el principal.

Y la declaración es verdadera. Python 2 no está instalado por defecto en 18.04 y versiones publicadas después de eso. Ubuntu ya ha movido casi todos sus proyectos de Python 2 a Python 3. Por ejemplo, según las notas de la versión de la Discoteca Dingo:

Samba se ha actualizado a la versión 4.10.x, y uno de los grandes cambios aquí es python3 de apoyo. En la Discoteca, de la samba y sus dependencias son todos python3 sólo ahora, con la excepción de tdb. tdb todavía construye un python2 paquete, es decir, python-tdb, pero todas las demás, como la samba, se python3 sólo.

Por otra parte, incluso antes del lanzamiento de Ubuntu 18.04, Ubuntu/Canonical comenzó a preguntar a los desarrolladores para mover a Python 3, porque el fin está cerca. Desde Python - Wiki De Ubuntu:

Todas Ubuntu/Canonical impulsado el desarrollo debe ser la orientación de Python 3 en este momento, y todo el código nuevo debe ser Python 3-solo. Si usted no puede hacer esto a causa de su dependencia de la pila, vamos a hablar.

Parece que en su sistema de Python 2 se ha instalado intencionalmente o puede ser una dependencia a algún otro paquete cuyos desarrolladores no se han movido a Python 3. Usted puede comprobar los paquetes que dependen de Python 2 ejecutando,

apt rdepends python

La razón por la que Python 2 se invoca cuando python es ejecutar se encuentra en uno de los históricos punto de PEP 394 -- El "python" Comando en Unix-Como Sistemas:

El python comando siempre debe invocar Python 2 (para evitar difíciles de diagnosticar errores cuando Python 2 código se ejecuta en Python 3).

EnMiMaquinaFunciona.com

EnMiMaquinaFunciona es una comunidad de administradores de sistemas en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros sysadmin, hacer tus propias preguntas o resolver las de los demás.

Powered by: