# ############################################################## # Définition d'une classe Maillon : class Maillon: def __init__(self,v=None,s=None): self.valeur=v self.suivant=s # ############################################################## # Définition d'une classe liste_chainee : class liste_chainee: def __init__(self,premier_maillon=None): self.tete=premier_maillon def affiche(self): if self.tete==None: print("La liste est vide") else: maillon=self.tete while maillon.suivant!=None: print("%s => " % maillon.valeur,end="") maillon=maillon.suivant print(maillon.valeur) # ############################################################## # La fonction externe creation_lc(liste_des_valeurs) : def creation_lc(liste_des_valeurs): suivant=None for v in liste_des_valeurs[::-1]: m=Maillon(v,suivant) suivant=m return liste_chainee(m) # ############################################################## # Programme principal : # Création d'une liste chaînée à 4 maillons : m4=Maillon("D") m3=Maillon("C",m4) m2=Maillon("B",m3) m1=Maillon("A",m2) ma_liste=liste_chainee(m1) # Affichage de la liste chaînée : ma_liste.affiche() # création d'une liste vide : liste_vide=liste_chainee() # Affichage de la liste chaînée : liste_vide.affiche() # création automatique d'une liste chaînée (sans créer les maillons à la main) : liste=creation_lc([78,"Z",13,"bonjour",54,"Fin"]) # Affichage de la liste chaînée : liste.affiche()