Metoda compile () vrne objekt kode Python iz vira (običajni niz, bajtni niz ali objekt AST).
Sintaksa compile()
je:
prevajanje (vir, ime datoteke, način, zastavice = 0, dont_inherit = False, optimizacija = -1)
compile()
metoda se uporablja, če je koda Python v obliki niza ali je objekt AST in jo želite spremeniti v kodni objekt.
Objekt kode, ki ga vrne compile()
metoda, lahko pozneje pokličete z uporabo metod, kot sta: exec () in eval (), ki bodo izvajale dinamično generirano kodo Pythona.
parametri compile ()
source
- običajni niz, bajtni niz ali objekt ASTfilename
- datoteka, iz katere je bila prebrana koda. Če ni bil prebran iz datoteke, lahko sami določite imemode
- Aliexec
alieval
alisingle
.eval
- sprejme samo en izraz.exec
- Lahko sprejme kodni blok, ki vsebuje izjave, razred in funkcije Python itd.single
- če je sestavljen iz ene interaktivne izjave
flags
(neobvezno) indont_inherit
(neobvezno) - nadzoruje, katere prihodnje izjave vplivajo na prevajanje vira. Privzeta vrednost: 0optimize
(neobvezno) - raven optimizacije prevajalnika. Privzeta vrednost -1.
Vrnjena vrednost iz compile ()
compile()
metoda vrne kodni objekt Python.
Primer: Kako deluje compile ()?
codeInString = 'a = 5b=6sum=a+bprint("sum =",sum)' codeObejct = compile(codeInString, 'sumstring', 'exec') exec(codeObejct)
Izhod
vsota = 11
Tu je izvor v običajni nizni obliki. Ime datoteke je povzetek. In je exec
način kasneje omogoča uporabo exec()
metode.
metoda compile () pretvori niz v kodni objekt Python. Nato se objektni kod izvede z exec()
metodo.