Compile () -menetelmä palauttaa Python-koodiobjektin lähteestä (normaali merkkijono, tavumerkkijono tai AST-objekti).
Syntaksi compile()
on:
kääntää (lähde, tiedostonimi, tila, liput = 0, dont_inherit = väärä, optimoi = -1)
compile()
menetelmää käytetään, jos Python-koodi on merkkijonomuodossa tai on AST-objekti, ja haluat muuttaa sen koodiobjektiksi.
Menetelmän avulla palautettua compile()
koodiobjektia voidaan myöhemmin kutsua käyttämällä menetelmiä, kuten exec () ja eval (), jotka suorittavat dynaamisesti generoidun Python-koodin.
compile () Parametrit
source
- normaali merkkijono, tavumerkkijono tai AST-objektifilename
- tiedosto, josta koodi luettiin. Jos sitä ei luettu tiedostosta, voit antaa nimen itsemode
- Jokoexec
taieval
taisingle
.eval
- hyväksyy vain yhden lausekkeen.exec
- Se voi viedä koodilohkon, jolla on Python-käskyt, luokka ja toiminnot jne.single
- jos se koostuu yhdestä vuorovaikutteisesta lausunnosta
flags
(valinnainen) jadont_inherit
(valinnainen) - valvoo, mitkä tulevat lauseet vaikuttavat lähteen kokoamiseen. Oletusarvo: 0optimize
(valinnainen) - kääntäjän optimointitaso. Oletusarvo -1.
Palautusarvo kääntämisestä ()
compile()
method palauttaa Python-koodiobjektin.
Esimerkki: Kuinka compile () toimii?
codeInString = 'a = 5b=6sum=a+bprint("sum =",sum)' codeObejct = compile(codeInString, 'sumstring', 'exec') exec(codeObejct)
Tuotos
summa = 11
Tässä lähde on normaalissa merkkijonossa. Tiedostonimi on sumstring. Ja exec
tila sallii myöhemmin exec()
menetelmän käytön .
menetelmä compile () muuntaa merkkijonon Python-koodiobjektiksi. Koodiobjekti suoritetaan sitten exec()
menetelmällä.