Метода цомпиле () враћа објект Питхон кода из извора (нормални низ, низ бајтова или АСТ објекат).
Синтакса compile()
је:
компајлирање (извор, име датотеке, начин рада, заставице = 0, донт_инхерит = Нетачно, оптимизација = -1)
compile()
метода се користи ако је Питхон код у облику низа или је АСТ објекат, а ви га желите променити у објект кода.
Објект кода враћен compile()
методом може се касније позвати помоћу метода попут: екец () и евал () које ће извршити динамички генерисани Питхон код.
цомпиле () Параметри
source
- нормалан низ, низ бајтова или АСТ објекатfilename
- датотека из које је прочитана шифра. Ако није прочитана из датотеке, можете сами дати имеmode
- Илиexec
илиeval
илиsingle
.eval
- прихвата само један израз.exec
- Може узети блок кода који има Питхон изјаве, класу и функције итд.single
- ако се састоји од једне интерактивне изјаве
flags
(опционално) иdont_inherit
(опционално) - контролише који будући искази утичу на компилацију извора. Подразумевана вредност: 0optimize
(опционално) - ниво оптимизације компајлера. Подразумевана вредност -1.
Повратна вредност из цомпиле ()
compile()
метода враћа Питхон објект кода.
Пример: Како функционише цомпиле ()?
codeInString = 'a = 5b=6sum=a+bprint("sum =",sum)' codeObejct = compile(codeInString, 'sumstring', 'exec') exec(codeObejct)
Оутпут
сума = 11
Овде је извор у нормалном облику стринга. Име датотеке је сумстринг. И, exec
режим касније дозвољава употребу exec()
методе.
цомпиле () метода претвара низ у објект Питхон кода. Објект кода се затим извршава помоћу exec()
методе.