# -*- coding: utf-8 -*- class Pile(object): def __init__(self): self.pile = [] def estPileVide(self): return self.pile == [] def empiler(self, x): self.pile.append(x) def depiler(self): if self.estPileVide(): raise ValueError("pile vide") return self.pile.pop() def sommet(self): res = self.depiler() self.empiler(res) return res def affiche(self): res = "sommet -> " i = len(self.pile)-1 while i >= 0: res += str(self.pile[i])+" | " i -= 1 return res # la fonction suivante permet une utilisation de print avec une pile def __repr__(self): return self.affiche() print("----------------------------------------------------------------") print("Essai de la classe pile") p = Pile() p.empiler(1) p.empiler(2) p.affiche() p.depiler() p.affiche() p.depiler() p.affiche() p.empiler('*') p.empiler('p') p.empiler('m') print(p) p.empiler(1) print(p) print("----------------------------------------------------------------")