Red Hat Training

A Red Hat training course is available for RHEL 8

Capítulo 15. Uso de Python

15.1. Introducción a Python

Python es un lenguaje de programación de alto nivel que soporta múltiples paradigmas de programación, como el orientado a objetos, el imperativo, el funcional y el procedimental. Python tiene una semántica dinámica y puede utilizarse para la programación de propósito general.

Con Red Hat Enterprise Linux, muchos paquetes que se instalan en el sistema, como los paquetes que proporcionan herramientas del sistema, herramientas para el análisis de datos o aplicaciones web, están escritos en Python. Para poder utilizar estos paquetes, es necesario tener instalados los paquetes python.

15.1.1. Versiones de Python

Existen dos versiones incompatibles de Python, Python 2.x y Python 3.x.

RHEL 8 proporciona las siguientes versiones de Python.

VersiónPaquete a instalarEjemplos de comandosDisponible desdeCiclo de vida

Python 3.6

python3

python3, pip3

RHEL 8.0

rHEL 8 completo

Python 2.7

python2

python2, pip2

RHEL 8.0

más corto

Python 3.8

python38

python3.8, pip3.8

RHEL 8.2

más corto

Consulte Red Hat Enterprise Linux Life Cycle y Red Hat Enterprise Linux 8 Application Streams Life Cycle para obtener detalles sobre la duración del soporte.

Cada una de las versiones de Python se distribuye en un módulo independiente y, por su diseño, se pueden instalar varios módulos en paralelo en el mismo sistema.

El módulo python38 no incluye los mismos enlaces a las herramientas del sistema (RPM, DNF, SELinux y otras) que se proporcionan para el módulo python36.

Importante

Especifica siempre la versión de Python cuando lo instales, lo invoques o interactúes con él. Por ejemplo, utilice python3 en lugar de python en los nombres de paquetes y comandos. Todos los comandos relacionados con Python deben incluir también la versión, por ejemplo, pip3, pip2, o pip3.8.

El comando python no versionado(/usr/bin/python) no está disponible por defecto en RHEL 8. Puede configurarlo utilizando el comando alternatives; para obtener instrucciones, consulte Configuración del Python no versionado. Cualquier cambio manual en /usr/bin/python, excepto los cambios realizados con el comando alternatives, puede ser sobrescrito en una actualización.

Como administrador del sistema, se recomienda utilizar preferentemente Python 3 por las siguientes razones:

  • Python 3 representa la principal dirección de desarrollo del proyecto Python.
  • El apoyo a Python 2 en la comunidad upstream finaliza en 2020.
  • Las bibliotecas populares de Python están dejando de soportar Python 2 en el upstream.
  • Python 2 en Red Hat Enterprise Linux 8 tendrá un ciclo de vida más corto y su objetivo es facilitar a los clientes una transición más suave a Python 3.

Para los desarrolladores, Python 3 tiene las siguientes ventajas sobre Python 2:

  • Python 3 permite escribir código expresivo, mantenible y correcto con mayor facilidad.
  • El código escrito en Python 3 tendrá una mayor longevidad.
  • Python 3 tiene nuevas características, incluyendo asyncio, f-strings, desempaquetado avanzado, argumentos de sólo palabra clave, excepciones encadenadas y más.

Sin embargo, el software existente tiende a requerir que /usr/bin/python sea Python 2. Por esta razón, no se distribuye ningún paquete python por defecto con Red Hat Enterprise Linux 8, y se puede elegir entre usar Python 2 y 3 como /usr/bin/python, como se describe en Sección 15.2.5, “Configurar el Python no versionado”.

15.1.2. El paquete interno platform-python

Las herramientas del sistema en Red Hat Enterprise Linux 8 utilizan una versión 3.6 de Python proporcionada por el paquete interno platform-python. Red Hat aconseja a los clientes utilizar el paquete python36 en su lugar.