Formation python Quatrième partie

 EXERCICE ONZE

Manipulons quelques fonction de la bibliothèque numpy:

import numpy as np
donneesX = np.array([[1,2,3,15,18] , [18,22,4,15,15]])
print ( donneesX.shape )

 

Fabrication d’un tableau de séries de données

import numpy as np
temperature = np.arange(25,44.5,0.5)
print( temperature )

print( temperature.mean() )
print( np.mean( temperature ) )

print( np.min( temperature ) )
print( np.max( temperature ) )
print( np.median( temperature ) )
print( np.std( temperature ) )

 

Manipulation de matrice par l’appel de fonction sur chaque élément:

import numpy as np
temperature = np.arange(25,44.5,0.5)

def toKelvin(x):
 return x + 273.15

print( toKelvin( temperature ) )

 

Manipulation des tableaux par réorganisation des lignes et des colonnes

a = np.arange(6)
print( a )
a = np.arange(6).reshape(2,3)
print( a )

Itération sur chaque élément du tableau:

a =np.array([[1,2],[3,4],[5,6]])
for (x,y), valeur in np.ndenumerate(a):
   print( valeur )

Plus compliqué en indiquant que les valeurs pour les indices paires:

a =np.array([[1,2],[3,4],[5,6]])
for (x,y), valeur in np.ndenumerate(a):
   if x % 2 == 0 
      print( valeur )

Ou le second éléments de chaque sous-tableau:

a =np.array([[1,2],[3,4],[5,6]])
for (x,y), valeur in np.ndenumerate(a):
   if y == 1 
      print( valeur )

Attention imaginons ce type de situations et que nous voulons le dernier élément

a =np.array([[1,2,3,4],[5,6,7,8],[9,10,11,12]])
for (x,y), valeur in np.ndenumerate(a):
   if y == 1 
      print( valeur )

Il faudrait alors utiliser

a =np.array([[1,2,3,4],[5,6,7,8],[9,10,11,12]])
[ soustableau[ -1 ] for soustableau in a]

Mais en fait il faudrait écrire plutôt

a =np.array([[1,2,3,4],[5,6,7,8],[9,10,11,12]])
for valeur in ( [ soustableau[ -1 ] for soustableau in a] ):
  print( valeur )

 

EXERCICE DOUZE

Virtual env dans python permet de fabriquer une configuration particulière des packages python par projet. Cela évite d’avoir un projet1 qui a besoin de Numpy en version 1.3 et un projet2 qui a besoin de Numpy en version 1.6.

A la création du projet dans PyCharm choisir « Custom environement » qui va se base dans mon exemple sur la version de Python 3.11:

En fait, le dossier indiqué dans Location :

c:\Users\pierre.jean\Desktop\PythonProjet1\pythonProject\.venv\ var convenir 

Va contenir une version de python pour ce projet du coup sur cet exemple on voit que pip est en version 23.2.1 et on peut mettre à jours en version 24 via le bouton upgrade (à gauche de l’oeil dans la barre de menu)

Si après la mise à jours de ce package, on crée un nouveau projet avec une configuration Custom environement », nous allons constater que la version de pip n’est pas à jours car chaque projet à sa propre liste de packages.

Au final, la configuration de python et de ses packages se trouve donc dans le dossier du projet. Pour le partage de projet avec d’autres personnes c’est plus simple pour échanger.

A propos Pierre Jean

Ingénieur de Recherche CERIS Centre d'Enseignement et de Recherche en Informatique et Systèmes IMT Mines Alès UMR Euromov DHM Plus de détails sur Pierre JEAN
Ce contenu a été publié dans EuroMov DHM. Vous pouvez le mettre en favoris avec ce permalien.