Como compilar um arquivo python?

44

Eu comecei a aprender python e também sou um novo usuário para o Ubuntu. Eu preciso saber as formas de compilar os arquivos .py . Eu tentei com o comando

python "hello.py"

Quais são as outras formas de compilar o python?

    
por Bharath Lakshman 26.07.2013 / 16:15

5 respostas

49

Adicionando à resposta de Bryan, se você simplesmente deseja compilar um arquivo ou um monte de arquivos de um terminal, o módulo py_compile pode ser executado como um script da seguinte maneira:

python -m py_compile fileA.py fileB.py fileC.py ...

    
por Yamaho 26.07.2013 / 16:54
25

Esteja ciente de que você não precisa para compilar um arquivo .py para executá-lo. O Python é uma linguagem interpretada e você pode executar os scripts diretamente, usando:

python hello.py

Ou torne seu script executável adicionando #!/usr/bin/env python à parte superior do script, tornando o arquivo executável com chmod +x hello.py e, em seguida, executando:

./hello.py

O fato de o Python compilar internamente seu script .py para bytecode .pyc arquivos por motivos de desempenho é um detalhe de implementação e, a menos que você tenha uma strong razão para fazê-lo, deixe o próprio python decidir quando e se compilar. / p>     

por MestreLion 27.07.2013 / 03:06
10

Confira este link Compile em Python

No meio da página, ele fala sobre o módulo py_compile que pode ser importado. A sintaxe é a seguinte:

import py_compile

py_compile.compile("file.py")

Este método de compilação não executará o módulo como executar python file.py.

Há também um método que compila uma árvore de diretórios inteira, mas deixarei que você verifique o link para ver como isso é executado.

Espero que isso ajude.

    
por Bryan 26.07.2013 / 16:29
7

Você também pode tentar compileall :

python -m compileall ./
    
por MediaVince 30.11.2015 / 17:21
1

Você pode compilar scripts Python para um código binário usando vários métodos, mas descobri que usar o Nuitka é mais eficiente.

O Nuitka é um compilador Python-to-C ++ que suporta quase todas as versões do python.

A sintaxe do comando é tão fácil quanto

nuitka hello.py

Acesse o link para obter mais informações.

    
por salafi 31.01.2017 / 00:37