Lorsque l'on lance python depuis le système d'exploitation on accède à l'interpéteur Python :
Cette console s'utilise un peu comme une calculatrice. Dans ce notebook on utilisera les cellules de code
afin de taper du code.
Afin d'exécuter une ligne de code il suffit de cliquer sur le bouton "play" à côté de la cellule correspondante.
2*5
On peut ainsi taper des calculs, déclarer des variables et leur faire "subir" quelques opérations :
maVariable = 7
double = 2 * maVariable
double # permet d'afficher le contenu de la variable double
Pour utiliser certains fonctions mathématiques, il faut auparavant les "importer" à partir du module math
from math import cos, pi # on importe la fonction cosinus, la valeur de pi
cos(2*pi)
On peut poser des questions à l'utilisateur avec input()
:
reponse = input("Comment t'appeles-tu ?")
"Bonjour " + reponse + " !"
x = float( input("Quelle est la valeur de x ? ") )
# le float permet de convertir la réponse en un nombre décimal
y = x**2
y
Avant d'aller plus loin, installons les modules nécessaires :
pip install numpy matplotlib sympy
On peut représenter graphiquement des fonctions rapidement :
import numpy as np
import matplotlib.pyplot as plt
abscisses = np.arange(-10, 5, 0.01) # cette fonction crée des valeurs entre -10 et 5 espacéées de 0.01
ordonnees = abscisses *2 -3 # on applique la fonction x->2x - 3 aux valeurs précédentes
plt.plot(abscisses, ordonnees) # on représente les abscisses et les ordonnées
Un exemple plus élaboré :
import numpy as np
import matplotlib.pyplot as plt
abscisses = np.arange(-2*pi, 2*pi, 0.01)
cosinus = np.cos(abscisses) # on applique la fonction x->cos(x) aux valeurs d'abscisses
sinus = np.sin(abscisses) # on applique la fonction x->sin(x) aux valeurs d'abscisses
plt.plot(abscisses, cosinus, 'b-') # on représente le cosinus par une ligne bleue ('b-')
plt.plot(abscisses, sinus , 'r-') # on représente le sinus par une ligne rouge ('r-')
Pourriez-vous représenter les fonctions $x\mapsto x$, $x\mapsto \sqrt{x}$ et $x\mapsto x^2$ pour les valeurs de $x$ comprises entre $0$ et $1$ ?
import numpy as np
import matplotlib.pyplot as plt
abscisses = np.arange(0, 1, 0.001)
x = abscisses
xcarre = abscisses * abscisses
xracine = np.sqrt(abscisses)
plt.plot(x, x, 'b-')
plt.plot(x, xcarre, 'r-')
plt.plot(x, xracine, 'g-')
La bibliothèque sympy permet de faire du calcul symbolique (résoudre des équations, dériver...)
from sympy import *
x = Symbol('x')
solve(2*x+3) # on résout l'équation 2x + 3 = 0 (le '=0' est sous-entendu)
x, y= symbols('x y')
solve([2*x-5*y+1, 3*x+2*y-8]) # on résout le système d'équations 2x-5y=-1 ; 3x+2y = 8
diff(x**2)
integrate(x**2)