Vous êtes sur la page 1sur 4

Aide mémoire Pyton, numpy, matplotlib. exemple.

sort() trier une liste range (N, M) : liste d'entier de N à M-1


range (N,M,P) : liste d'entier de N à M-1 avec un
Opération arithmétique Fonctions pas P
Assignation : a=1, b=2, a,b=1,2, c=a*b Une fonction est définie par un bloc commençant Appliquer une fonction à toute une liste
Addition, soustraction, multiplication : a+b, a-b, par def nomfonction (parametreS) : puis indenté map(f,liste)
a*b, a/b (si a et b réel) def f(x) : Entrer au clavier
Modulo (reste division) : a%b y=x-1 var=raw_input("rentrer votre variable")
return y
Opérateur de comparaison connaitre le type d'un element type()
Égalité : a==b def mafonction(x,y) a=2
Inégalité stricte : a>b , a<b sum=x+y type(a)
Inégalité large : a<=b , a>=b produit=x*y Changer le type int(), float(), int()
Différence : a!=b return sum,produit float(a)
Logique a et b : a and b Pour obtenir des valeurs et les placer dans des
variables Boucles et instructions
Logique a ou b : a or b
exposant : a**b
Somme, Produit=mafonction(3,4) conditionnelles
Boucle de 0à 9
Listes Fonctions Built-in for i in range (10) :
Impression au terminal : print()
Une liste en python est un tableau print i**2
unidimensionnel, pouvant contenir, tout type print "\n" impression d'un saut de ligne
d'éléments, définie entre crochets. Boucle de Nà M-1 par pas P
print "\t" impression d'une tabulation
exemple= [1,2,3,"entier", variable, liste] Accès à print variable : impression du contenu de la for i in range (N,M,P) :
l'élément i : exemple[i] variable print i**3
Ajout d'un élément elt à la fin max() donne le max d'une liste Boucle sur une liste
exemple.append(elt)
min() donne le min() d'une liste for elts in liste :
insertion d'un élements elts à la position i ,
Création de liste avec la fonction range() print elts
exemple.insert(i,elts)
range (N) : liste d'entier de 0 à N-1 Boucle tant que
Inversion de la liste : exemple.reverse()
i=0 np.empty(N,dtype='int') : tableau vide de N a[-2,:] extrait les deux dernières lignes
while i<10 : élements Toutes opérations s'appliquent à chaque terme du
print i np.empty(N,dtype='float') : tableau vide de N tableau a.
réels np.sin(a) ; a**2
i=i+1
np.zeros(N) : tableau de N zéros
if a<b : a.max() max global
np.ones((L,C)) : tableau de dimension (L,C) de a.max(0) max de chaque colonne
print "pluspetit que b" uns
elif a>0 a.max(1) max de chaque ligne
np.zeros_like(a) : tableau de zéros de même
dimension et type que a de même a.min() ;a.sum();a.prod(), a.mean,
print "mais plusgrand que zero"
a.cumsum()
le suffixe _like fonctione aussi avec empty et
Modules zero a>5 : tableau contenant True à la place des
Python est un langage modulaire. De nombreuses np.arange(M,N,P) : tableau allant de N à M-1 éléments vérifiant la condition et false ailleurs
fonctions supplémentaires sont définis dans des avec un pas P (optionnel) (a>5).all() True si tous les éléments vérifient la
modules qu'il faut importer pour utiliser. condition.
np.linespace(a,b,N) : tableau de N éléments
Par exemple le module math permet d'avoir de uniformément répartis entre a et b (a>5).any True si un élément vérifie la condition.
nombreuses fonctions, plusieurs écriture
b=a.copy() : copie d'un tableau a dans un tableau np.where(a>5,b,c) a,b,c même dimension .
possibles :
b=a ne copie pas mais crée un référence (si a est Retourne un tableau de même dimension
import math modifié b aussi) contenant b si condition vérifiée c sinon
math.sin(5)
import math as m Opérations sur les tableaux Calcul matriciel
a.shape : obtenir les dimensions de a Les matrices sont des tableaux à 2 dimensions,
m.sin(5) les vecteurs à une seule.
a=a.reshape(8,3) avec a=np.ones((4,6)) :
modification des dimensions en conservant la Création
Tableaux longueur totale.
Nous utiliserons le module numpy qui permet np.diag(v) : matrice avec le vecteur v sur la
l'usage de tableaux optimisés pour le calcul a[ :,0] extrait la première colonne diagonale ex : np.diag(np.arange(N))
numérique. a[2:3 ,1] extrait les troisièmes et quatrièmes np.diag(v,i) : matrice avec le vecteur v sur la
lignes de la deuxième colonne iéme diagonale supérieur (-i pour inférieur)
import numpy as np
np.array([1,2,3)] : transforme une liste en tableau a[:2, :] extrait les deux premières lignes np.identity(N) : matrice identité de taille N
Opérations : pl.plot(x,np.sin(x) : crée le graphe de sin(x) aux x=y=pl.linspace(-3,3,100)
A.transpose() : tansposée de A valeurs de x X,Y=pl.meshgrid(x,y)
A.conj().transpose.() : adjointe complexe de A pl.show() : affiche le graphe Graphique sur ce maillage
pl.plot(x,np.sin(x),"g-",x,np.cos(x),"r:") : crée le pl.imshow(np.sin(X)*Y) en dégradé de couleur
np.dot (A,B) : produite de A et B
graphe de sin en trait continu vert et cos en
np.inner(x,y) : produit scalaire des vecteur x et y pointillé rouge.
np.linalg.det(A) : déterminant de la matrice A
Manipulations de fichiers
Couleurs :b bleu, g vert r rouge, c cyan, m
magenta,y yellow, k noir, w blanc générales
np.linalg.inv(A) : inverse de la matrice A
Ouverture d'un fichier, le mode est spécifié par le
np.linalg.solve(A,b) : solution x du sytème style de ligne : - continue, - - tirets, -. point tiret r w r+
linéaire Ax=b pointillé, . Point à chaque valeur de x, o un cercle
à chaque valeur de x, v un triangle , etc.. fich= open("fichier.txt","r")
np.linalg.eigvals(A) : valeurs propres de la
matrice A pl.savefig('nomdufichier') sauvegarde le Création d'un fichier (le w ecrase le fichier)
graphique en png fich = open("test.dat","w")
np.linalg.eig(A) : valeurs et vecteurs propres de
A pl.clf() efface le buffer contenant les graphiques Fermeture d'un fichier
np.trapz(y) : intégrale du vecteur y avec la pl.title("titre du graph") ajoute un titre au fich.close()
formule des trapèzes. Par défaut avec un pas de graphique Lecture
1, pas réglable. pl.xlabel("labelx"),pl.ylabel("labely") , ajoute
une légende sur l'axe des x, y fich= open("fichier.txt","r")
np.diff(y) : différence divisées de y (intégrale)
pl.txt(x,y,"texte") place du texte à la position x y fich.read()
Tracé de courbes (matplotlib, pl.subplot(325) crée des sous figures 3 lignes et 2 fich.readlines() lire ligne par ligne
pylab) colonnes en rendant actifs le graphique N°5, il Avec une Boucle
import pylab as pl faut rendre la sous figure actives avant chaque
for ligne in fich :
tracé.
pylab trace des courbes définies par des valeurs print ligne
numériques, dc des tableaux. plt.axis([xmin, xmax, ymin, ymax]) tracer entre
xmin et xmax pour les abcisses et ymin et ymax Ecriture
x=pl.linspace(-np.pi, np.pi,100) tableau de 100 pour les ordonnées
pts entre p i et − monfichier=("toto.txt","w)"
pl.ylim(ymin=0) définir le ymin uniquement monfichier.write=("ecrire qcq chose")
pl.plot(np.sin(x)), crée le graphe de sin(x) avec
les indices x Création d'un maillage 2D
Manipulation avec numpy
np.save('/tmp/123', np.array([[1, 2, 3], [4, 5,
6]])) : save une matrice dans tmp/123 avec
l'extension .npy
a= np.loadtxt("/tmp/123") le fichier 123 est placé
dans le tableau a

Module os
os.listdir(".") : lister les fichiers
os.getcwd() repertoire de travail
os.chdir("/sscs/qcq/") changer de repertoire
os.system("notepad") lancer une commande
externe

Vous aimerez peut-être aussi