Python compile()
La funzione compile() restituisce la sorgente specificata come oggetto, pronto per essere eseguito.
compile(fonte, nome del file, mode, flag, dont_inherit, optimize)
I parametri:
- fonte: una stringa normale, una stringa di byte o un oggetto AST.
- nome del file: file da cui è stato letto il codice. Se non è stato letto da un file, potete dare un nome voi stessi.
- mode: exec o eval o single. Eval accetta solo una singola espressione. Exec può prendere un blocco di codice che ha istruzioni, classe e funzioni, etc. Single consiste di una singola dichiarazione.
- flag (facoltativo) e dont_inherit (facoltativo): controlla che le dichiarazioni future influiscono sulla compilazione della fonte. Valore predefinito: 0.
- optimize (facoltativo): livello di ottimizzazione del compilatore. Valore predefinito -1.
codice = 'a = 3\nb=3\nsum=a+b\nprint("sum =",sum)'
oggetto = compile(codice, 'sumstring', 'exec')
exec(oggetto)
a = compile('print(42)', 'test', 'eval')
exec(a)
Output del codice
sum = 6
42