Chapitre (programmation en Python)
●Instruction d’affectation =.
Elle permet de donner une valeur à une variable.
Exemple :
a=2
e=5
etc.
●Instruction d’affichage print() .
Elle permet d’afficher un résultat à l’écran.
Exemple : print(a)
RQ : on peut ajouter des phrases pour savoir ce que l’on
affiche avec print. Les phrases sont entre guillemets.
Exemple :
print(‘le résultat est : ‘, a)
Exemple :
a= 2
b=5
c=a+b
print('la somme est ',c)
Ce programme affiche :
la somme est 7.
●Instruction input .
Elle permet à Python de nous demander quelle valeur on
veut entrer.
Comme pour print, on peut ajouter des phrases entre
guillemets.
Exemple :
a = input(‘votre prenom? ’)
Exemple :
a = input('votre prenom? ')
g = input('votre genre ? h ou f ')
if g == 'h':
print('bonjour monsieur ' ,a)
if g == 'f':
print('bonjour madame ' ,a)
●Instruction de comparaison ==.
Elle permet de comparer deux variables.
Elle est souvent utilisée par l’instruction if.
Exemple :
s = 13 ← On donne à s la valeur 13.
d == u ← On vérifie si d est égal à u.
d = u ← On donne à d la valeur de u.
RQ : les autres instructions de comparaison sont :
< , > , ≤ , ≥ , != .
N’est pas égal à
●Instruction conditionnelle if.
Elle permet à Python de faire un travail en fonction de
certaines conditions.
Syntaxe :
if condition :
faire ce travail
RQ 1 : la ligne avec if se termine par :
RQ 2 : le travail qui doit être fait est toujours décalé par
rapport à la ligne de if.
Exemple :
if condition :
faire le travail 1
faire le travail 2
Le travail 1 sera fait seulement si la condition est réalisée.
Le travail 2 sera toujours fait, peu importe la condition.
●Instruction de boucle for.
Elle permet de répéter plusieurs fois la même action, et est
accompagnée d’un compteur de boucle (souvent appelé i).
Syntaxe :
for i in range(1 , 16) :
faire ce travail
RQ 1 : la ligne avec for se termine par :
RQ 2 : le travail qui doit être fait est toujours décalé par
rapport à la ligne de for.
RQ 3 : il y a 15 boucles ici : for i in range(1 , 16) :
car la dernière valeur (ici 16) n’est jamais prise en compte
par Python. Donc le compteur de boucle i va de 1 à 15.
IMPORTANT : la boucle for est utilisée quand on connaît à
l’avance le nombre de boucles.
Si l’instruction est for i in range(debut, fin), alors le nombre
de boucles est : fin – debut.
●Instruction de boucle while.
Elle permet de répéter plusieurs fois la même action, et est
accompagnée d’une condition.
Syntaxe :
while condition :
faire ce travail
RQ 1 : la ligne avec while se termine par :
RQ 2 : le travail qui doit être fait est toujours décalé par
rapport à la ligne de while.
RQ 3 : la boucle stoppe quand la condition n’est PAS réalisée.
IMPORTANT : la boucle while est utilisée quand on NE
connaît PAS à l’avance le nombre de boucles.
●Types de nombre à Python.
Il y a deux types importants :
>>>Les entiers int).
>>>Les nombres décimaux (float).
●Les strings en Python.
Les strings sont des mots, ou groupes de mots (phrases).
On doit les mettre entre guillemets.
Attention : quand vous entrez un nombre grâce à input,
Python considère que c’est un string.
Exemple : voici 3 strings.
a = ‘maison’
b=‘‘
c = ‘rouge’
d = a + b + c ← On peut les concaténer :
print(d)
A l’affichage, on voit alors que d = ‘maison rouge’.
Exemple : voici 3 strings.
a = ‘10’
b = ‘50 ‘
c = ‘27’
d = a + b + c ← On peut les concaténer :
print (d)
A l’affichage, on voit alors que d = ‘105027’.
Exemple : on peut transformer un int en string et inversement.
a = int(‘425’) ← transforme le mot ‘425’ en nombre 425.
b = str(89) ← transforme le nombre 89 en mot ‘89’ .
●Les fonctions en Python.
Elles sont très utiles pour réaliser plusieurs fois la même
opération. Elles rendent également le code plus lisible en le
fractionnant en blocs logiques.
Exemple : dans ce programme on réalise plusieurs fois la
même chose : 2 fois un nombre + ce nombre au carré + 13.
….
c = 2*a+a**2 + 13
….
….
d = 2*b+b**2 + 13
….
….
m = 2*(x + y)+(x + y)**2 + 13
Il est plus simple de définir la fonction qui fait la même
chose au début du programme, puis de l’utiliser ensuite
plusieurs fois.
def g(x) :
g = 2*x+x**2 + 13
return g
….
c = g(a)
….
….
d = g(b)
….
….
m = g(x + y)
●Les listes (ou array).
Permettent de classer plusieurs variables
dans un ordre précis.
Exemple :
▪Pour créer une liste :
L = [‘jardin’ , 123 , ’gateau’ , -12 , ‘prototype’ , ‘478’]
Les éléments sont séparés par des virgules.
Cette liste contient 6 éléments, dont 4 string,
et 2 nombres (123 et -12).
L = [] c’est la liste vide.
▪Numérotation des éléments : le 1er élément a toujours le
numéro 0 (ou index 0).
L[0] = ‘jardin’
L[1] = 123
…
L[5] = ‘478’
▪Longueur d’une liste.
len(L) = 6.
▪Ajouter un élément à une liste.
Si on fait L.append(‘miel’) alors on obtiendra :
L = [‘jardin’ , 123 , ’gateau’ , -12 , ‘prototype’ , ‘478’ , ‘miel’]
▪Supprimer un élément avec un index.
Si on fait del L[1] alors on obtiendra :
L = [‘jardin’ , ’gateau’ , -12 , ‘prototype’ , ‘478’ , ‘miel’]
▪Supprimer un élément avec sa valeur.
Si on fait L.remove(‘prototype’) alors on obtiendra :
L = [‘jardin’ , ’gateau’ , -12 , ‘478’ , ‘miel’]
▪Inverser les éléments d’une liste.
Si on fait L.reverse() alors on obtiendra :
L = [‘miel’ , ’ 478’ , -12 , ‘gateau’ , ‘jardin’]
▪Copier une liste.
Si on veut copier une liste L dans une nouvelle liste C,
alors on tape : C = L[ :] .
●Tracé d’un nuage de points.
Pour tracer un nuage de points avec :
la liste X qui contient les abscisses des points,
et la liste Y qui contient les ordonnées des points,
on utilise la syntaxe suivante :
A mettre en début
import matplotlib.pyplot as plt de programme
plt.plot(X,Y)
plt.show()
●Utilisation de fonctions mathématiques avancées.
Pour utiliser les fonctions suivantes :
exp(x), sin(x), cos(x), ln(x), √ x , etc…
Il faut écrire ceci en début de programme :
from math import *
import numpy as np
Si on veut calculer e , il faut taper : np.exp(2) .
2
Si on veut calculer sin(1,57) , il faut taper : np.sin(1.57) .
Si on veut calculer √ 12 , il faut taper : sqrt(12) .
Si on veut calculer 1 ,6 , il faut taper : 1.6**3 .
3
Exemple :
import matplotlib.pyplot as plt
import numpy as np
x = np.linspace(0., 2*np.pi, 100)
plt.plot(x, np.exp(x/2)*np.cos(5*x), '-r')
plt.title('Fonction $f(x)=e^{x/2} cos(5x)$')
plt.xlabel('x')
plt.text(1, -10, 'Courbe', fontsize=22)
plt.show()
●Module random. ← A IMPORTER D’ABORD !
Ce module permet de générer des nombres aléatoires. Très
utile pour les probabilités, par exemple pour simuler des
lancers de dés.
Exemple :
import random
for i in range(1,4) :
print (random.random())
RQ 1 : random.random génère un float aléatoire entre 0 et 1.
RQ 2 : random.uniform(a, b) génère un float aléatoire entre a et b.
RQ 3 : random.randint(a, b) génère un int aléatoire entre a et b.
RQ 4 : random.gauss(m, s) génère un float aléatoire qui suit la loi
normale de moyenne m et d’écart-type s.