Методът compile () връща Python кодов обект от източника (нормален низ, байтов низ или AST обект).
Синтаксисът на compile()е:
компилиране (източник, име на файл, режим, флагове = 0, dont_inherit = False, оптимизиране = -1)
compile() метод се използва, ако Python кодът е под формата на низ или е AST обект и искате да го промените на кодов обект.
Кодовият обект, върнат от compile()метод, може по-късно да бъде извикан с помощта на методи като: exec () и eval (), които ще изпълняват динамично генериран код на Python.
compile () Параметри
source- нормален низ, байтов низ или AST обектfilename- файл, от който е прочетен кода. Ако не е прочетено от файл, можете сами да дадете имеmode- Илиexecилиevalилиsingle.eval- приема само един израз.exec- Може да вземе кодов блок, който има Python изрази, клас и функции и т.н.single- ако се състои от едно интерактивно изявление
flags(по избор) иdont_inherit(по избор) - контролира кои бъдещи изявления влияят върху компилацията на източника. Стойност по подразбиране: 0optimize(по избор) - ниво на оптимизация на компилатора. Стойност по подразбиране -1.
Върната стойност от compile ()
compile() метод връща Python кодов обект.
Пример: Как работи compile ()?
codeInString = 'a = 5b=6sum=a+bprint("sum =",sum)' codeObejct = compile(codeInString, 'sumstring', 'exec') exec(codeObejct)
Изход
сума = 11
Тук източникът е в нормална низова форма. Името на файла е sumstring. И по- execкъсно режимът позволява използването на exec()метод.
compile () метод преобразува низа в Python кодов обект. След това кодовият обект се изпълнява с помощта на exec()метод.








