array — tableaux de données numériques¶
Ce module définit le type array.array : une séquence économe en espace de valeurs d’un seul type numérique fixe, indexable comme une liste mais soutenue par un bloc de mémoire contigu accessible via le protocole tampon.
Codes de type pris en charge¶
L’argument typecode à un seul caractère sélectionne le type d’élément :
Code de type |
Type C |
Octets |
Type Python |
|---|---|---|---|
|
|
1 |
|
|
|
1 |
|
|
|
2 |
|
|
|
2 |
|
|
|
2 ou 4 |
|
|
|
2 ou 4 |
|
|
|
4 |
|
|
|
4 |
|
|
|
8 |
|
|
|
8 |
|
|
|
4 |
|
|
|
8 |
|
Les codes 'f' et 'd' nécessitent un micrologiciel compilé avec la prise en charge de la virgule flottante (par défaut sur la plupart des cartes). La largeur exacte de 'i' et 'I' suit l’ABI C de l’hôte — typiquement 4 octets sur les ports Cortex-M.
Classes¶
- class array.array(typecode: str, iterable: Iterable = ())¶
Crée un tableau avec des éléments du type donné. Le contenu initial du tableau est donné par iterable. S’il n’est pas fourni, un tableau vide est créé.
En plus des méthodes ci-dessous, les objets array implémentent également le protocole tampon. Cela signifie que le contenu de l’ensemble du tableau peut être accédé sous forme d’octets bruts via une
memoryviewou d’autres interfaces qui utilisent ce protocole.- extend(iterable: Iterable) None¶
Ajoute à la fin du tableau les nouveaux éléments contenus dans iterable, en l’agrandissant.
- __getitem__(index: int | slice) Any¶
Lecture indexée du tableau, appelée comme
a[index](oùaest unarray). Renvoie une valeur si index est unintet unarraysi index est une tranche (slice). Les indices négatifs comptent à partir de la fin etIndexErrorest levée si l’indice est hors limites.Note :
__getitem__ne peut pas être appelée directement (a.__getitem__(index)échoue) et n’est pas présente dans__dict__, cependanta[index]fonctionne bien.
- __setitem__(index: int | slice, value: Any) None¶
Écriture indexée dans le tableau, appelée comme
a[index] = value(oùaest unarray).valueest une valeur unique si index est unintet unarraysi index est une tranche (slice). Les indices négatifs comptent à partir de la fin etIndexErrorest levée si l’indice est hors limites.Note :
__setitem__ne peut pas être appelée directement (a.__setitem__(index, value)échoue) et n’est pas présente dans__dict__, cependanta[index] = valuefonctionne bien.
- __len__() int¶
Renvoie le nombre d’éléments dans le tableau, appelé comme
len(a)(oùaest unarray).Note :
__len__ne peut pas être appelée directement (a.__len__()échoue) et la méthode n’est pas présente dans__dict__, cependantlen(a)fonctionne bien.
- __add__(other: array) array¶
Renvoie un nouveau
arrayqui est la concaténation du tableau avec other, appelée commea + other(oùaet other sont tous deux desarrays).Note :
__add__ne peut pas être appelée directement (a.__add__(other)échoue) et n’est pas présente dans__dict__, cependanta + otherfonctionne bien.
- __iadd__(other: array) array¶
Concatène le tableau avec other sur place, appelée comme
a += other(oùaet other sont tous deux desarrays). Équivalent àextend(other).Note :
__iadd__ne peut pas être appelée directement (a.__iadd__(other)échoue) et n’est pas présente dans__dict__, cependanta += otherfonctionne bien.
- __repr__() str¶
Renvoie la représentation sous forme de chaîne du tableau, appelée comme
str(a)ourepr(a)(oùaest unarray). Renvoie la chaîne"array(<type>, [<elements>])", où<type>est la lettre du code de type du tableau et<elements>est une liste des éléments du tableau séparés par des virgules.Note :
__repr__ne peut pas être appelée directement (a.__repr__()échoue) et n’est pas présente dans__dict__, cependantstr(a)etrepr(a)fonctionnent tous deux.