Disseny d’una classe contenidora¶
Conté molts elements d’un mateix tipus (o no, si és una classe genèrica).
Diverses classe predefinides de python són contenidores:
str
,list
,tuple
,dict
.Té algun atribut on emmagatzema els elements. Sovint és privat.
Solen tenir accés per índex i ser iterables.
Mètodes especials¶
Mètode especial |
Crida a |
Significat |
---|---|---|
|
|
Consulta un element per índex |
|
|
Assigna un valor a un element d’un índex |
|
|
Consulta el nombre d’elements |
|
|
Consulta si un element pertany a l’objecte |
|
Permet iterar sobre els elements |
Exemple: Classe VectorNDim
Classe iterable¶
Permet utilitzar la iteració
for var in obj
.Per defecte, si té el mètode
__getitem__
definit, ja és iterable sobre els índexos 0, 1, 2, … fins que__getitem__
provoca algun error. Per exemple, la classevectors_ndim.VectorNdim
.… o bé té el mètode
__iter__
definit, que és un generador o retorna un iterador. Per exemple, la classefeixos.Feix
.