1 2 3 4 5 6 7 8 9 10 11 12 13 14
| #!/usr/bin/env python
# _*_ coding: utf-8 _*_
#
#
texte = """On va utiliser la méthode précédente, mais en imitant la méthode shelve. Pour cela, on va créer une nouvelle classe.
Cette classe, appelée ici Dicovar, est dérivée par héritage d'un type dict. On pourra donc bénéficier de toutes les méthodes du type dict (dictionnaire).
Comme pour la méthode précédente, ce n'est valable que pour les types de données de base: int, long, float, complex, str, unicode, tuple, list, dict. En fait, ce sont tous les types dont on peut stocker la valeur avec repr() et dont on peut la retrouver avec eval(). Ce n'est pas le cas, par exemple, avec un type fonction: pour la fonction toto(), repr(toto) donnera quelque chose comme <function toto at 0x02A72CF0> qui donnera une erreur dans eval.
A quoi peut bien servir un code pour gérer un dictionnaire de variables? Voici un exemple: je voulais créer une calculatrice qui exploite des variables dans les expressions. Mais il s'agissait de variables de calcul, et non de variables du code de la calculatrice elle-même. Or, la fonction eval a deux paramètres optionnels intéressants: on peut ajouter un dictionnaire de variables globales et éventuellement un dictionnaire de variables locales . Prenons un exemple simplifié: """
l = texte.split()
print " ".join([str(i) for i in l]) |
Partager