Salut,
Je débute en python et je souhaite créer un système de template qui à partir des fichiers templates (des fichiers HTML avec des variables) me remplace chaque variables et retranscrit le tout dans un autre fichier...
Ca j'arrive à le faire sans problème, j'ai vu qu'il existe une classe Template dans le module string... C'est elle qui m'aide à remplacer les variables contenue dans le fichier template...

Mon problème, c'est que je souhaite mettre chaque variable du fichier dans un dictionnaire afin de les modifier facilement... Mais je ne trouve pas comment faire...

Pour info une variable est définie comme ceci $ma_variable ou encore ${ma_variable}...

Si ça peut vous servir voici jusqu'a maintenant une ébauche (pas grand chose) que j'ai faite :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
 
from string import Template
 
class HtmlTemplate(Template):
    """A class to manipulate HTML templates."""
    def __init__(self, path):
        template = self._loadTpl(path)
        Template.__init__(self, template)
 
    def _loadTpl(self, path):
        """Load HTML template and return all its content."""
        tpl = open(path, 'r')
        tplString = tpl.read()
        tpl.close()
 
        return tplString
 
    def export(self, template, path):
        """Export the template in memory to an HTML file."""
        f = open(path, 'w')
        f.write(template)
        f.close()
Bon j'ai bien dis que je débutais hein il y a sûrement un autre moyen de faire...