class Cellule: """une cellule d'une liste chaînée""" def __init__(self, v, s): self.valeur = v self.suivante = s class Pile: """structure de pile""" def __init__(self): self.contenu = None def est_vide(self): return self.contenu is None def empiler(self, v): self.contenu = Cellule(v, self.contenu) def depiler(self): if self.est_vide(): raise IndexError("depiler sur une pile vide") v = self.contenu.valeur self.contenu = self.contenu.suivante return v def creer_pile(): return Pile()