3. Tableaux numpy

numpy est la librairie qui permet de manipuler de larges tableaux de données. Elle offre plusieurs avantages par rapport aux listes : elle est beaucoup plus rapide et surtout permet de faire des calculs sans utiliser de boucles for. Il est indispensable de savoir manipuler correctement les tableaux numpy pour d’une part gagner du temps lors de l’exécution du programme, mais surtout gagner du temps lors de l’écriture du programme.

Contrairement aux listes, la taille et le type de donnée est fixé à la création d’un tableau numpy, ce qui fait que la mémoire est immédiatement allouée au tableau.

Voici quelques exemples :

import numpy as np

a = np.arange(10)
print(a**2)
print(np.sin(a))
[ 0  1  4  9 16 25 36 49 64 81]
[ 0.          0.84147098  0.90929743  0.14112001 -0.7568025  -0.95892427
 -0.2794155   0.6569866   0.98935825  0.41211849]

Avertissement

Le module numpy contient toutes les fonctions mathématiques qui sont dans le module math. Il n’est pas possible d’utiliser une fonction du module math avec numpy.

import math
math.sin(np.arange(10))
---------------------------------------------------------------------------
TypeError                                 Traceback (most recent call last)
<ipython-input-2-8d2dc11828a2> in <module>
      1 import math
----> 2 math.sin(np.arange(10))

TypeError: only size-1 arrays can be converted to Python scalars