Manipuler les valeurs en Python =============================== On donne ici quelques exemples de manipulation des valeurs obtenues précédemment sous forme de listes ou de tableaux Numeric. Numeric est un module Python optionnel (c’est à dire non inclus à la distribution de Python fournie sur www.python.org) mais indispensable pour utiliser *Code_Aster* , on peut donc faire import Numeric sur toutes installations de *Code_Aster* . Avec des listes Python ---------------------- Les listes Python sont facilement manipulables en utilisant les boucles. Prenons l’exemple de la notice [:ref:`U2.51.01 `] pour :math:`–10.` ]). Avec des tableaux Numeric ------------------------- La manipulation des données sous forme de tableaux Numeric est simplifiée par l’utilisation d’opérations très performantes (appelées *ufunc* ) sur le tableau entier (dans l’exemple suivant on utilise sin()). Numeric gère également les tableaux à plusieurs dimensions. En reprenant l’exemple précédent: from Numeric import * lx = arrayrange(-10., 10.+0.2, 0.2, Float) ly = array(map(f, lx)) ou bien sans utiliser f: ly = -1.5*less(sin(lx), 0.) + (-5.)*(1.-less(sin(lx), 0.)) Notons que map() retourne une liste et non un tableau Numeric. La deuxième expression est entre 10et 20 fois plus rapide sur de *très* gros tableaux (:math:`{10}^{5}` – :math:`{10}^{6}` termes), ce qui est cependant assez peu souvent le cas des fonctions ou tables issues d’ *Aster* . On peut tracer cette courbe en utilisant les mots-clés ABSCISSE et ORDONNEE de IMPR_FONCTION en prenant soin de convertir les tableaux Numeric en liste, par exemple (cf. [§ :ref:`4 ` ]): ABSCISSE = lx.tolist() .. _Ref101086366: