O método compile () retorna um objeto de código Python da fonte (string normal, string de byte ou um objeto AST).
A sintaxe de compile()é:
compilar (fonte, nome do arquivo, modo, sinalizadores = 0, dont_inherit = False, otimizar = -1)
compile() método é usado se o código Python está em forma de string ou é um objeto AST e você deseja alterá-lo para um objeto de código.
O objeto de código retornado por compile()método pode ser chamado posteriormente usando métodos como: exec () e eval (), que irão executar código Python gerado dinamicamente.
Parâmetros compile ()
source- uma string normal, uma string de byte ou um objeto ASTfilename- arquivo do qual o código foi lido. Se não foi lido de um arquivo, você mesmo pode dar um nomemode- Ouexecouevalousingle.eval- aceita apenas uma única expressão.exec- Pode ser um bloco de código que contém instruções, classes e funções Python e assim por diante.single- se consistir em uma única instrução interativa
flags(opcional) edont_inherit(opcional) - controla quais declarações futuras afetam a compilação da fonte. Valor padrão: 0optimize(opcional) - nível de otimização do compilador. Valor padrão -1.
Valor de retorno de compile ()
compile() método retorna um objeto de código Python.
Exemplo: Como funciona o compile ()?
codeInString = 'a = 5b=6sum=a+bprint("sum =",sum)' codeObejct = compile(codeInString, 'sumstring', 'exec') exec(codeObejct)
Resultado
soma = 11
Aqui, a fonte está na forma de string normal. O nome do arquivo é sumstring. E, o execmodo posterior permite o uso de exec()método.
O método compile () converte a string em um objeto de código Python. O objeto de código é então executado usando o exec()método.








