Metode compile () atgriež Python koda objektu no avota (parastā virkne, baitu virkne vai AST objekts).
Sintakse compile()
ir:
kompilēt (avots, faila nosaukums, režīms, karodziņi = 0, dont_inherit = False, optimizēt = -1)
compile()
metodi izmanto, ja Python kods ir virknes formā vai ir AST objekts, un jūs vēlaties to mainīt uz koda objektu.
Ar compile()
metodi atgriezto koda objektu vēlāk var izsaukt, izmantojot tādas metodes kā: exec () un eval (), kas izpildīs dinamiski ģenerētu Python kodu.
apkopot () parametrus
source
- parasta virkne, baitu virkne vai AST objektsfilename
- fails, no kura kods tika nolasīts. Ja tas netika nolasīts no faila, jūs pats varat piešķirt vārdumode
- vai nuexec
vaieval
vaisingle
.eval
- pieņem tikai vienu izteicienu.exec
- Tas var aizņemt kodu bloku, kurā ir Python priekšraksti, klase un funkcijas utt.single
- ja tas sastāv no viena interaktīva paziņojuma
flags
(pēc izvēles) undont_inherit
(pēc izvēles) - nosaka, kuri turpmākie paziņojumi ietekmē avota apkopošanu. Noklusējuma vērtība: 0optimize
(pēc izvēles) - kompilatora optimizācijas līmenis. Noklusējuma vērtība -1.
Atgriezeniskā vērtība no kompilēšanas ()
compile()
method atgriež Python koda objektu.
Piemērs: Kā darbojas kompile ()?
codeInString = 'a = 5b=6sum=a+bprint("sum =",sum)' codeObejct = compile(codeInString, 'sumstring', 'exec') exec(codeObejct)
Rezultāts
summa = 11
Šeit avots ir parastā virknes formā. Faila nosaukums ir sumstring. Un, jo exec
režīms vēlāk ļauj izmantot exec()
metodi.
metode compile () pārveido virkni par Python koda objektu. Pēc tam koda objekts tiek izpildīts, izmantojot exec()
metodi.