Bonjour,

je souhaite créer un classe qui hérite de la classe "list" mais qui en plus soit capable de me donner le nombre max d'éléments qu'elle a contenu.

Si j'écris
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
class my_list ( list ):
   def __init__ (self):
      self.max_len = 0
Il me dit (avec raison) que 'list' n'a pas d'attribut 'max_len'.

max_len doit bien sûr contenir le nb max d'éléments (i.e. à chaque accroissement de la liste,
il faut le mettre à jour avec un truc du genre max_len = max( max_len,len( self ))

Si j'agrège (au lieu de dériver)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
class my_list :
   def __init__ (self):
      self.the_list = []
      self.max_len = 0
Il me faudra réécrire toutes les méthodes de 'list' !

Y a-t-il un moyen de faire ce que je veux ?

Merci d'avance !