3.6 UserList --- Classe pour encapsuler des objets liste

Ce module définit une classe qui encapsule des objets liste. C'est une classe de base utile pour vos propres classes de genre liste, qui peuvent en hériter et surcharger les méthodes existantes ou en ajouter de nouvelles. De cette façon on peut ajouter de nouveaux comportements aux listes.

Le module UserList définit la classe UserList:

UserList([liste])
Classe qui simule une liste. Le contenu de l'instance est conservé dans une liste ordinaire, qui est accessible par l'attribut data des instances de UserList. Le contenu de l'instance est initialisé à partir de liste, qui prend par défaut la valeur de la liste vide []. liste peut être soit une liste Python ordinaire, soit une instance de UserList (ou une sous-classe).

En plus de supporter les méthodes et les opérations des séquences mutables (voir la section 2.1.5), les instances de UserList fournissent l'attribut suivant:

data
Une vraie liste Python qui sert à stocker le contenu de la classe UserList.

Obligations pour les sous-classes:Les sous-classes de UserList doivent fournir un constructeur qui peut être appelé sans argument ou avec un argument. Les opérations de liste qui retournent une nouvelle séquence essaient de créer une instance de la classe implémentée. Pour cela, il faut que le constructeur de cette classe puisse être appelé avec un paramètre unique, qui est un objet séquence utilisé comme source de données.

Si une classe dérivée ne veut pas se plier à ces exigences, toutes les méthodes spéciales supportées par cette classe devront être surclassées; vous pouvez consulter les sources pour des informations au sujet des méthodes qui doivent être fournies dans ce cas.

data

Changé en version 2.0: Les versions Python 1.5.2 et 1.6 demandaient aussi que le constructeur soit appelable sans paramètre, et offre un attribut data mutable. Les versions précédentes de Python n'essayaient pas de créer des instances de la classe dérivée