2 Cet exemple met en oeuvre le profiling de Python sur un cas
3 avec plusieurs éléments de définition,
4 une opération de vérification du dictionnaire d
5 et l'appel à la méthode supprime de l'objet o
12 from Accas import SIMP,FACT,BLOC
13 from Accas import AU_MOINS_UN
15 # Construction objet de définition
17 cata= FACT(mcf1=FACT(a=SIMP(typ='I'),b=SIMP(typ='I')),
18 mcf2=FACT(c=SIMP(typ='I'),d=SIMP(typ='I')),
20 bloc1=BLOC(condition="a==1",
24 sect3=FACT(c=SIMP(typ='I'),d=SIMP(typ='I')),
25 regles=AU_MOINS_UN('sect3'),
28 # Vérification objet de définition
31 print "L'objet de définition est valide "
36 d= {'mcf1':{'a':1,'b':2},
37 'mcf2':({'c':3},{'c':5}),
38 'sect3':{'c':3,'d':5},
43 # Création de l'objet MCFACT de nom mcf1
45 # Vérification objet MCFACT
48 print "L'objet MCFACT basé sur le dictionnaire %s est valide " % d
50 print "L'objet MCFACT basé sur le dictionnaire %s n'est pas valide " % d
56 #profile.run("main()")
57 prof=profile.Profile()
64 # Impression de différentes statistiques
67 print "*********************************************"
68 print "* Trié par temps interne (20 plus grands) *"
69 print "*********************************************"
70 p.sort_stats('time').print_stats(20)
72 print "***********************************************"
73 print "* Liste des appellés triée par temps interne *"
74 print "***********************************************"
77 print "************************************************************"
78 print "* Liste des appellants de is_reel triée par temps interne *"
79 print "************************************************************"
80 p.print_callers('is_reel')
82 print "*********************************************"
83 print "* Trié par temps cumulé (20 plus grands) *"
84 print "*********************************************"
85 p.sort_stats('cumulative').print_stats(20)
87 print "*********************************************"
88 print "* Trié par noms de fonction *"
89 print "*********************************************"
90 p.sort_stats('name').print_stats()
92 print "*********************************************"
93 print "* Statistique standard *"
94 print "*********************************************"
97 print "*************************************************"
98 print "* Trié par fichier seulement methodes __init__ *"
99 print "*************************************************"
100 p.sort_stats('file').print_stats('__init__')