Les tableaux à une dimension en Python
Un tableau est une structure de données statiques contenant un nombre de valeurs déterminées à l’avance. Il s’agit d’une séquence finie d’éléments auxquels on peut accéder directement sur base de leurs positions. Dans un tableau, tous les éléments doivent être du même type. Un tableau est représenté en mémoire sous la forme de cellules contiguës. Il n’est pas possible de créer une case ou d’en supprimer une. On dit qu’ils sont statiques.
Les tableaux à une seule dimension sont aussi appelés des vecteurs. On peut accéder à une case d’un vecteur en donnant le numéro d’indice. Il est important de savoir que la numérotation de l’index commence à 0. Ainsi, dans le tableau ci-dessous, pour accéder à la valeur 23 positionné dans la case en indice 3, il faut utiliser la notation t[3]. Notez que deux cases d’un tableau peuvent contenir la même valeur.
| Indices | 0 | 1 | 2 | 3 | 4 | 5 |
|---|---|---|---|---|---|---|
| Valeurs | 42 | -9 | 21 | 0 | 999 | 21 |
import numpy as np t = np.empty(6, np.int32) t[0] = 42 t[1] = -9 t[2] = 21 t[3] = 0 t[4] = 999 t[5] = 21
À défaut de pouvoir créer facilement des tableaux statiques en python, ceux-ci peuvent être créés avec NumPy. Cette bibliothèque doit être importée avant de l’utiliser. Il est commun d’employer un alias: import numpy as np pour faciliter l’écriture du code. Le gros avantage de cette bibliothèque, comparé aux listes de python, c’est que d’accéder à un élément précis de ce tableau est une opération instantanée. Les listes de python (ou tableau dynamique) ont un temps d’accès plus long. En réalité, pour accéder à l’élément n°3 d’une liste, python va d’abord accéder au n°1, puis au n°2, avant seulement d’arriver au n°3. Plus la liste est grande, plus vos programmes deviennent très peu performants.
def fill(tableau, maxSize, value):
for i in range(maxSize):
tableau[i] = value
t = np.empty(6, np.int32)
fill(t, 6, 0)
