compile ( )
DESCRIPTION.
Permet de convertir un objet en code exécutable, ou évaluable, par un script Python.
SYNTAXE.
Variable = compile ( source , fichier , mode , drapeau , type , niveau )
Variable = ⇨ variable qui recevra le code compilé [ optionnel ]
compile ( ) ⇨ appel de la méthode [ OBLIGATOIRE ]
source ⇨ objet à convertir [ OBLIGATOIRE ]
fichier ⇨ nom du fichier source [ OBLIGATOIRE ]
mode ⇨ type d'exécution [ OBLIGATOIRE ]
drapeau ⇨ mode de compilation [ optionnel ]
type ⇨ compilation de la source [ optionnel ]
niveau ⇨ niveau d'optimisation [ optionnel ]
REMARQUES.
source peut être un str ( ) ou un tableau d'octets bytes ( ). Son expression doit pouvoir être du code Python valide.
fichier est le nom du fichier contenant source. Si source ne provient pas d'un fichier, n'importe quelle chaine de caractères est autorisée, par convention on utilise "<string>".
mode indique quel type d'instruction contient source. "exec" indique que source contient une ou plusieurs lignes de instructions et/ou méthodes pouvant être exécutées. "eval" indique de source est une expression à évaluer. "single" indique de source est une instruction interactive. Si "single" est utilisé, l’exécution de compile ( ) affichera tous résultats autre que None.
EXEMPLES.
exec ( compile ( "print ( 'Mon Python à Moi.' )" , "<string>" , "exec" ) ) retourne Mon Python à Moi.
Titre = compile ( "print ( 'Mon Python à Moi.' )" , "<string>" , "exec" )
exec ( Titre ) retourne Mon Python à Moi.
Message = "print ( 'Mon Python à Moi.' )"
Titre = compile ( Message , "<string>" , "exec" )
exec ( Titre ) retourne Mon Python à Moi.
Script = "Nom = input ( 'Votre nom ? ' )\nprint ( 'Bonjour' , Nom )"
Civilite = compile ( Script , "<string>" , "exec" )
exec ( Script )
retourne
Votre nom ? Origine
Bonjour Origine
Script = """
while True :
Choix = input ( 'votre genre (M, F, N) ? ' )
if Choix.upper ( ) =="Q" :
break
elif Choix.upper ( ) =="M" :
Genre = "Monsieur"
elif Choix.upper ( ) =="F" :
Genre = "Madame"
else :
Genre = "Vous"
print ( "Bonjour" , Genre , "." )
print ( "Entrez Q pour Quitter" )
print ( "Au revoir." )
"""
Programme = compile ( Script , "<string>" , "exec" )
exec ( Script )
retourne
votre genre (M, F, N) ? F
Bonjour Madame .
Entrez Q pour Quitter
votre genre (M, F, N) ? N
Bonjour Vous .
Entrez Q pour Quitter
votre genre (M, F, N) ? M
Bonjour Monsieur .
Entrez Q pour Quitter
votre genre (M, F, N) ? Q
Au revoir.
kchoix = input ( "Entrez un chiffre SVP " )
Test = compile ( "0 <= int ( kchoix ) < 10" , "<string>" , "eval" )
print ( eval ( Test ) )
retourne
Entrez un chiffre SVP 34
False
kchoix = input ( "Entrez un chiffre SVP " )
Test = compile ( "0 <= int ( kchoix ) < 10" , "<string>" , "eval" )
Valeur = eval ( Test )
print ( Valeur )
retourne
Entrez un chiffre SVP 4
True
Votre aide est précieuse pour améliorer ce site, alors n'hésitez pas à faire part de
Dans la LOGITHEQUE de MON PYTHON PAS A PAS
vous trouvez des suggestions de projets simples et classiques pour
ooo
TESTER - DÉCOUVRIR - PRATIQUER - APPROFONDIR - EXPLORER
ooo
la programmation récréative avec le langage PYTHON 3
avec un exemple de résolution à télécharger pour vous inspirer.