3.19 codeop --- Compilation de code Python

Le module codeop fournit une fonction pour compiler du code Python, avec des renseignements sur le fait qu'il est certainement complet, peut-être complet ou certainement incomplet. Cette information est utilisée par le module code et ne doit normalement pas être utilisé directement.

Le module codeop définit la fonction suivante:

compile_command (source[, nomfichier[, symbole]])
Essaie de compiler source, qui doit être une chaîne de caractères de code Python, et retourne un objet code si source est du code source Python valide. Dans ce cas, l'attribut nom de fichier de l'objet code sera nomfichier, avec comme valeur par défaut '<input>'. Retourne None si source n'est pas du code Python valide, mais s'il s'agit d'un début de code Python valide.

S'il y a un problème avec source, une exception sera déclenchée. SyntaxError est déclenchée si la syntaxe Python est incorrecte, et OverflowError s'il y a une constante numérique incorrecte.

L'argument symbole indique si source est compilé comme une instruction ('single', la valeur par défaut) ou comme une expression ('eval'). Toute autre valeur provoque le déclenchement de ValueError.

Attention:Il est possible (mais peu probable) que l'analyse s'arrête avec succès avant que la fin de la source soit atteinte; dans ce cas, les symboles restants peuvent être ignorés au lieu de provoquer une erreur. Par exemple, une barre oblique inverse suivie de deux caractères de fin de ligne peut être suivie de n'importe quoi. Ceci sera corrigé quand l'API pour l'analyseur syntaxique sera meilleur.