English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
O método compile() retorna um objeto de código Python a partir do código-fonte (string comum, string de bytes ou objeto AST).
A sintaxe de compile() é:
compile(source, filename, mode, flags=0, dont_inherit=False, optimize='}}-1)
Se o código Python estiver na forma de string ou objeto AST e você quiser convertê-lo para objeto de código, use o método compile().
Pode usar, por exemploexec() e doMétodos da classe para chamar o objeto de código retornado pelo método compile(), que executará o código Python gerado dinamicamente.
source -String comum, string de bytes ou objeto AST
filename-Do qual o código é lido. Se não for lido de um arquivo, pode ser nomeado
modo- exec ou eval ou single.
eval -Aceita apenas uma expressão.
exec -Pode usar um bloco de código que contenha comandos Python, classes e funções, etc.
single -Se contiver uma única instrução interativa
flags (opcional) e dont_inherit (opcional)-Especificar quais declarações futuras afetarão a compilação do código-fonte. Valor padrão: 0
optimize (opcional)-Nível de otimização do compilador. Valor padrão-1.
O método compile() retorna um objeto de código Python.
codeInString = 'a =', 5\nb=6\nsum=a+b\nprint("sum =",sum)' codeObejct = compile(codeInString, 'sumstring', 'exec') exec(codeObejct)
Quando o programa é executado, a saída é:
sum = 11
Aqui,Fonte (source)Adotando a forma de string comum. EsteNome do arquivoésumstringE, o modo exec permite usar o método exec() mais tarde.
O método compile() converte uma string em um objeto de código Python. Em seguida, o método exec() executa o objeto de código.