Capítulo 15. Usando Python

15.1. Introdução à Python

Python é uma linguagem de programação de alto nível que suporta múltiplos paradigmas de programação, tais como orientada a objetos, imperativa, funcional e processual. Python tem uma semântica dinâmica e pode ser usada para programação de propósito geral.

Com o Red Hat Enterprise Linux, muitos pacotes que são instalados no sistema, tais como pacotes que fornecem ferramentas de sistema, ferramentas para análise de dados ou aplicações web, são escritos em Python. Para poder usar estes pacotes, você precisa ter os pacotes python instalados.

15.1.1. Versões Python

Duas versões incompatíveis de Python são amplamente utilizadas, Python 2.x e Python 3.x.

A RHEL 8 fornece as seguintes versões do Python.

VersãoPacote para instalarExemplos de comandoDisponível desdeCiclo de vida

Python 3.6

python3

python3, pip3

RHEL 8.0

rHEL 8 completo

Python 2.7

python2

python2, pip2

RHEL 8.0

mais curto

Python 3.8

python38

python3.8, pip3.8

RHEL 8.2

mais curto

Veja Red Hat Enterprise Linux Life Cycle e Red Hat Enterprise Linux 8 Application Streams Life Cycle para obter detalhes sobre a duração do suporte.

Cada uma das versões Python é distribuída em um módulo separado, e pelo projeto, é possível instalar vários módulos em paralelo no mesmo sistema.

O módulo python38 não inclui as mesmas ligações com as ferramentas do sistema (RPM, DNF, SELinux e outras) que são fornecidas para o módulo python36.

Importante

Sempre especifique a versão do Python ao instalá-lo, invocá-lo ou interagir de outra forma com ele. Por exemplo, use python3 ao invés de python em nomes de pacotes e comandos. Todos os comandos relacionados ao Python devem incluir também a versão, por exemplo, pip3, pip2, ou pip3.8.

O comando não versionado python (/usr/bin/python) não está disponível por padrão no RHEL 8. Você pode configurá-lo usando o comando alternatives; para instruções, veja Configurando o Python não versionado. Qualquer alteração manual em /usr/bin/python, exceto alterações feitas usando o comando alternatives, podem ser sobrescritas após uma atualização.

Como administrador de sistemas, recomenda-se usar preferencialmente o Python 3 pelas seguintes razões:

  • A Python 3 representa a principal direção de desenvolvimento do projeto Python.
  • O apoio ao Python 2 na comunidade a montante termina em 2020.
  • As bibliotecas populares Python estão deixando cair o suporte Python 2 no rio acima.
  • Python 2 no Red Hat Enterprise Linux 8 terá um ciclo de vida mais curto e seu objetivo é facilitar uma transição mais suave para Python 3 para os clientes.

Para os desenvolvedores, Python 3 tem as seguintes vantagens sobre Python 2:

  • Python 3 permite escrever código expressivo, de fácil manutenção e correto.
  • O código escrito em Python 3 terá uma longevidade maior.
  • Python 3 tem novas características, incluindo asyncio, f-strings, desembalagem avançada, argumentos apenas com palavras-chave, exceções encadeadas e muito mais.

Entretanto, o software existente tende a exigir que /usr/bin/python seja o Python 2. Por esta razão, nenhum pacote padrão python é distribuído com o Red Hat Enterprise Linux 8, e você pode escolher entre usar Python 2 e 3 como /usr/bin/python, conforme descrito em Seção 15.2.5, “Configurando o Python não versionado”.

15.1.2. O pacote plataforma interna - pitão

As ferramentas do sistema no Red Hat Enterprise Linux 8 usam uma versão 3.6 do Python fornecida pelo pacote interno platform-python. A Red Hat aconselha os clientes a usar o pacote python36 em seu lugar.