Python compileren ()

De methode compile () retourneert een Python-codeobject uit de bron (normale string, een bytestring of een AST-object).

De syntaxis van compile()is:

 compileren (bron, bestandsnaam, modus, vlaggen = 0, dont_inherit = False, optimaliseren = -1)

compile() methode wordt gebruikt als de Python-code de vorm van een string heeft of een AST-object is en u deze wilt wijzigen in een code-object.

Het code-object dat door de compile()methode wordt geretourneerd , kan later worden aangeroepen met behulp van methoden zoals: exec () en eval () die dynamisch gegenereerde Python-code zullen uitvoeren.

compile () Parameters

  • source - een normale string, een byte-string of een AST-object
  • filename- bestand waaruit de code werd gelezen. Als het niet uit een bestand is gelezen, kunt u zelf een naam geven
  • mode- Of execof evalof single.
    • eval - accepteert slechts een enkele uitdrukking.
    • exec - Het kan een codeblok hebben dat Python-instructies, klassen en functies heeft, enzovoort.
    • single - als het bestaat uit een enkele interactieve verklaring
  • flags(optioneel) en dont_inherit(optioneel) - bepaalt welke toekomstige verklaringen de compilatie van de bron beïnvloeden. Standaardwaarde: 0
  • optimize(optioneel) - optimalisatieniveau van de compiler. Standaardwaarde -1.

Retourwaarde van compile ()

compile() methode retourneert een Python-codeobject.

Voorbeeld: hoe werkt compile ()?

 codeInString = 'a = 5b=6sum=a+bprint("sum =",sum)' codeObejct = compile(codeInString, 'sumstring', 'exec') exec(codeObejct)

Uitvoer

 som = 11

Hier is de bron in de normale tekenreeksvorm. De bestandsnaam is somstring. En de execmodus laat later het gebruik van een exec()methode toe.

compile () methode converteert de string naar Python code-object. Het code-object wordt vervolgens uitgevoerd met behulp van de exec()methode.

Interessante artikelen...