Red Hat Training

A Red Hat training course is available for RHEL 8

2.3.2. Código interpretativo

Esta seção mostra como byte-compilar um programa escrito em Python e interpretar em bruto um programa escrito em bash.

Nota

Nos dois exemplos abaixo, a linha #! no topo do arquivo é conhecida como shebang, e não faz parte da linguagem de programação código fonte.

O shebang permite utilizar um arquivo texto como executável: o carregador de programas do sistema analisa a linha contendo o shebang para obter um caminho para o executável binário, que é então utilizado como o intérprete da linguagem de programação. A funcionalidade exige que o arquivo de texto seja marcado como executável.

2.3.2.1. Byte-código de compilação

Esta seção mostra como compilar o programa pello.py escrito em Python em código byte, que é então executado pela máquina virtual em linguagem Python.

O código fonte Python também pode ser interpretado em bruto, mas a versão compilada por bytes é mais rápida. Portanto, os empacotadores RPM preferem empacotar a versão compilada por bytes para distribuição aos usuários finais.

pello.py

#!/usr/bin/python3

print("Hello World")

O procedimento para programas de compilação de bytes varia de acordo com os seguintes fatores:

  • Linguagem de programação
  • Máquina virtual do idioma
  • Ferramentas e processos utilizados com essa linguagem
Nota

Python é freqüentemente compilado por bytes, mas não da maneira descrita aqui. O procedimento a seguir visa não estar em conformidade com os padrões da comunidade, mas ser simples. Para as diretrizes Python do mundo real, veja Software Packaging and Distribution.

Use este procedimento para compilar pello.py em código byte:

Procedimento

  1. Byte-compilar o arquivo pello.py:

    $ python -m compileall pello.py
    
    $ file pello.pyc
    pello.pyc: python 2.7 byte-compiled
  2. Executar o código de bytes em pello.pyc:

    $ python pello.pyc
    Hello World