M.algorithmique Et Programmation Python
M.algorithmique Et Programmation Python
Elouafi Abdelamine
ENCG DAKHLA
Chapitre 1 : Algorithmique et bases du langage Python
q Importation de modules
q Introduction à NumPy et Pandas
q Représentations graphiques avec Matplotlib
q Classes et objets
q Héritage, encapsulation et polymorphisme
ALGORITHMES ET PROGRAMMATION PYTHON : CHAPITRE 1 ( INTRODUCTION À L’ALGORITHMIQUE )
Un algorithme est une suite finie et ordonnée d’instructions permettant de résoudre un problème ou
d’atteindre un objectif donné.
ALGORITHME Programmation
ALGORITHMES ET PROGRAMMATION PYTHON : REPRÉSENTATION D’UN ALGORITHME
L’en-tête
ü Contient le nom de l’algorithme
ü Permet d’identifier clairement le problème traité
Les déclarations
Algorithme ü Contiennent : (la liste des variables,
éventuellement la liste des constantes )
ü Précisent les données utilisées par l’algorithme
Le corps de l’algorithme
ü Contient les instructions à exécuter
ü Décrit les différentes étapes de résolution
ü Encadré par : Début … Fin
ALGORITHMES ET PROGRAMMATION PYTHON : REPRÉSENTATION D’UN ALGORITHME
Exemple :
L’en-tête
Algorithme Preparation_Thé_Marocain
les variables (Ingrédients) : Eau, Thé vert, Menthe fraîche, Sucre
Début
Les déclarations
• Faire chauffer l’eau dans la théière
• Ajouter le thé vert dans la théière
• Verser un peu d’eau chaude
• Jeter la première eau
• Ajouter la menthe fraîche
• Ajouter le sucre selon le goût
• Remplir la théière d’eau chaude Le corps de l’algorithme
• Attendre quelques minutes
• Verser le thé dans un verre
• Reverser le thé dans la théière
• Servir le thé dans les verres
Fin
ALGORITHMES ET PROGRAMMATION PYTHON
LES VARIABLES
80 3500 Abdellah 35
La mémoire
ALGORITHMES ET PROGRAMMATION PYTHON : LES VARIABLES
Une variable est une donnée qui possède un nom et dont la valeur peut changer au cours de l’exécution d’un
algorithme.
un nom
(identificateur) un type Une valeur
Règles de nommage
•Le nom doit être significatif •Entier : 10, 25
•Il ne doit pas contenir d’espaces •Réel : 12.5, 3.14
•Il ne doit pas commencer par un chiffre •Booléen : vrai / faux
•Il ne doit pas contenir de caractères spéciaux •Chaîne de caractères : “Python”, “ENCG”
ALGORITHMES ET PROGRAMMATION PYTHON : LES VARIABLES
Exemple:
Algorithme Somme ?
Variables :
A : Entier
B : Entier ?
S : Entier
Début
Lire A
Lire B ?
S←A+B
Afficher S
Fin
ALGORITHMES ET PROGRAMMATION PYTHON : LES VARIABLES (CONSTANTE)
Une constante est une donnée dont la valeur ne change pas au cours de l’exécution d’un algorithme.
v Variables vs Constantes
Variable Constante
Valeur modifiable Valeur fixe
Peut changer Ne change jamais
Utilisée dans les calculs Paramètre permanent
ALGORITHMES ET PROGRAMMATION PYTHON : LES VARIABLES
Variables i, j, k : entier;
Variables x, y : réel;
Variables trouver: booléen;
Variables Chaine1, chaine2 : chaîne de caractères;
Constante PI 3.14 ;
Constante MAXI 32 ;
ALGORITHMES ET PROGRAMMATION PYTHON : LES INSTRUCTIONS DE BASE
L’affectation
L’affectation consiste à attribuer une valeur à une variable (c’est-à-dire remplir ou modifier le contenu d'une
zone mémoire).
v Exercice 1:
q Donnez les valeurs des variables A, B et C après exécution des instructions suivantes ?
Variables A, B, C: Entier ;
A←7
B ← 17
A←B
B ← A+5
C←A+B
C←B–A
ALGORITHMES ET PROGRAMMATION PYTHON : LES INSTRUCTIONS D’ENTRÉES ET SORTIES
v Instruction d’écriture
Instruction d’écriture est une instruction qui permet d’afficher le contenu d’une variable ou/et un message sur
l’écran.
v La Syntaxe:
q Ecrire (Variable); ou bien afficher(Variable);
q Ecrire(‘message’); ou bien afficher(‘message’);
v Exemple:
v Instruction de lecture
Instruction de lecture est instruction qui permet d’entrer les données tapées au clavier
v La Syntaxe:
q lire (Variable); ou bien saisir(Variable);
v Exemple:
v Exemple
début
fin
Age ß 22
ALGORITHMES ET PROGRAMMATION PYTHON
Exercice1:
Mettre en ordre L’algorithme suivant:
v Exercice2:
Ecrire un algorithme qui demande trois notes et qui calcule et affiche la moyenne de ces notes.
Algorithme calcule_moyenne;
Variables Note1, Note2, Note3,Moyenne : Réel;
Début
Ecrire(‘Donnez la 1ere note :’);
Lire(Note1);
Ecrire(‘Donnez la 2eme note :’);
Lire(Note2);
Ecrire(‘Donnez la 3eme note :’);
Lire(Note3);
Moyenne ß (Note1+Note2+Note3)/3;
Ecrire(La Moyenne est ‘: , Moyenne);
Fin
ALGORITHMES ET PROGRAMMATION PYTHON : LES STRUCTURES DE CONTRÔLE
Les Structures de Contrôle permettent de contrôler l'ordre d'exécution des instructions (le séquencement) d'un
algorithme.
Une condition est une expression booléenne, elle est soit vraie soit fausse. La condition est soit simple, soit
composée.
I. Condition simple :
La condition simple est composée de deux opérandes et un opérateur de comparaison.
Les opérateurs de comparaison : <, >, <=, >=, =, <>.
v Exemple
X=2*y ; X<=4 ; X<>0
II. Condition composée :
La condition composée comporte plus qu’une condition simple qui sont reliées par des opérateurs logiques : ET,
OU, NON.
v Exemple
(A >B) et (A <>0);
((A>0) et (B>0)) OU ((A<0) ET (B<0);
ALGORITHMES ET PROGRAMMATION PYTHON : LA CONDITION UN CHOIX (RÉDUITE)
Syntaxe :
Si condition alors
Bloc d'instructions
Finsi
Algorithme exercice_1;
Variable N : Entier;
Début
Ecrire (« donnez un nombre:”);
Lire(N);
Si (N = 0) alors
Ecrire ("le Nombre est Nul");
Finsi
Fin
ALGORITHMES ET PROGRAMMATION PYTHON
Écrire un algorithme qui demande à l'utilisateur un nombre entre 10 et 20, puis affiche
un message « condition est vérifier » si le nombre est entre 10 et 20.
Algorithme exercice_2;
Variable N : Entier;
Début
Ecrire (‘‘donnez un nombre:”);
Lire(N);
Si (N > 0) ET (N<20) alors
Ecrire (" condition est vérifier ");
Finsi
Fin
ALGORITHMES ET PROGRAMMATION PYTHON
Syntaxe :
Si condition alors
Bloc d'instruction 1
Sinon
Bloc d'instruction 2
Finsi
ALGORITHMES ET PROGRAMMATION PYTHON
Algorithme exercice_3;
Variable N : Entier;
Début
Ecrire (« donnez un nombre:”);
Lire(N);
Si (N mod 2= 0) alors
Ecrire ("le Nombre est Pair");
Sinon
Ecrire ("le Nombre est Impair");
Finsi
Fin
ALGORITHMES ET PROGRAMMATION PYTHON
Si condition1 alors
Si condition2 alors
Bloc d'instruction A
Sinon
Bloc d’instruction B
Finsi
Sinon
Si condition3 alors
Bloc d'instruction C
Sinon
Finsi
ALGORITHMES ET PROGRAMMATION PYTHON
Algorithme exercice_4;
Variable N : Entier;
Début
Ecrire (« donnez un nombre:”);
Lire(N);
Si (N > 0) alors
Ecrire ("le Nombre est Strictement Positif");
Sinon
Si (N = 0) alors
Ecrire ("le Nombre est Nul");
Sinon
Ecrire ("le Nombre est Strictement Négatif");
Finsi
Fin
ALGORITHMES ET PROGRAMMATION PYTHON
La structure de choix multiple permet, en fonction de plusieurs conditions de type booléen (=), d’effectuer des
instructions (actions) différents suivants les valeurs d’une seule variable.
Algorithme exercice_5
v Exercice 5
Variable N : entier ;
Début
Ecrire (“Donnez un nombre ") ;
Lire(N) ;
Si N = 0 alors
Ecrire(“Zéro“);
Sinon
Si N = 1 alors
Ecrire(“Un“);
Si N=7 Sinon
Si N = 2 alors
Ecrire(“Deux“);
Sinon
Si N = 3 alors
Ecrire(“Trois“);
Sinon
Ecrire(“N > 3“);
FinSi
FinSi
FinSi
FinSi
Fin
ALGORITHMES ET PROGRAMMATION PYTHON : LES STRUCTURES ITÉRATIVES (BOUCLE)
Les Structures Itératives (Boucles, Répétitions) permettent d'exécuter un bloc d'instructions (traitement) plusieurs fois.
Le Nombre de répétitions peut être connu ou dépendre d’une condition.
Syntaxe :
Bloc d'instructions
FinTantQue.
ALGORITHMES ET PROGRAMMATION PYTHON : LES STRUCTURES ITÉRATIVES (BOUCLE)
Principe de la boucle :
v Cette Boucle permet la répétition de l’exécution d’un bloc d’instructions tant que la condition est
satisfaite (VRAI). Quand la condition devient fausse, la boucle s'arrête immédiatement.
v Le nombre de répétition de bloc d’instructions peut être connu ou inconnu d’avance, il dépond de
l’évolution de la valeur de la condition.
v La condition est testée avant la première exécution de bloc d’instructions.
Si la condition est initialement fausse, le bloc d’instructions ne sera jamais exécuté.
v Dans le bloc d’instructions, une des instructions doit absolument changé la valeur de la condition de vrai à
faux (incrémentation).
ALGORITHMES ET PROGRAMMATION PYTHON : LES STRUCTURES ITÉRATIVES (BOUCLE)
Ecrire un programme qui lit un nombre entier N puis affiche tous les nombres de 0 à N.
Algorithme Nombre;
Variable N,i : Entier;
Début
Ecrire (« donnez un nombre:”);
Lire(N);
i 0;
TantQue (i <= N) Faire
Ecrire (i);
i i+1 ;
FinTq
Fin
ALGORITHMES ET PROGRAMMATION PYTHON : LES STRUCTURES ITÉRATIVES (BOUCLE)
Algorithme Nombre;
Variable N : Entier;
Début
Ecrire (« donnez un nombre ?”);
Lire(N);
TantQue (N <> -1) Faire
Ecrire (‘‘Le double de’’, N, ‘‘est’’, 2*N);
Ecrire (‘‘Donnez un autre nombre ?’’);
Lire (N);
FinTq
Fin
ALGORITHMES ET PROGRAMMATION PYTHON : LES STRUCTURES ITÉRATIVES (BOUCLE)
Syntaxe :
Répéter
Bloc d'instructions
Jusqu’à Condition
ALGORITHMES ET PROGRAMMATION PYTHON : LES STRUCTURES ITÉRATIVES (BOUCLE)
Principe de la boucle :
v Cette boucle permet la répétition de l’exécution d’une ou plusieurs instructions (bloc d’instructions)
jusqu’à ce qu’une condition soit vérifiée.
v Le nombre de répétition de bloc d’instructions peut être connu ou inconnu d’avance. il dépond aussi de
l’évolution de la valeur de la condition
v Dans cette structure, contrairement à la boucle tant que, lorsque la condition est vérifiée, le traitement (la
répétition) s’arrête. De plus, la condition n’est testée qu’après une première exécution de bloc définie. Les
le bloc d’instructions sont donc exécutées au moins une fois, même si la condition est vérifiée dès le
départ
ALGORITHMES ET PROGRAMMATION PYTHON : LES STRUCTURES ITÉRATIVES (BOUCLE)
Ecrire un programme qui lit un nombre entier N puis affiche tous les nombres de 0 à N.
Algorithme Nombre;
Variable N,i : Entier;
Début
Ecrire (‘‘ donnez un nombre N”);
Lire(N);
i ß 0;
Repeter
Ecrire (i);
i ß i+1 ;
Jusqu’à i > N
Fin
ALGORITHMES ET PROGRAMMATION PYTHON : LES STRUCTURES ITÉRATIVES (BOUCLE)
X ß 0; X ß 0;
TantQue X <> 0 Faire Repeter
Ecrire(‘’Bonjour ’’); Ecrire(‘’Bonjour ’’);
FinTq Jusqu’à X =0
v La Boucle Pour
Syntaxe :
v La Boucle Pour :
Principe de la boucle :
v L’exécution du bloc d'instruction est répétée jusqu'à ce que le compteur atteigne la Valeur finale.
v Le nombre de répétition de bloc d’instructions est connu d’avance.
v À Chaque itération (répétition), la valeur du Compteur (Var) évolue selon la valeur du pas p
Var ß Var + p
ALGORITHMES ET PROGRAMMATION PYTHON : LES STRUCTURES ITÉRATIVES (BOUCLE)
Algorithme Table_Multiplication
Var N, i : Entier
Début
Ecrire("Entrer un nombre entier : ")
Lire(N)
Pour i ← 1 à 10 Faire
Ecrire(N, " x ", i, " = ", N * i)
FinPour
Fin
ALGORITHMES ET PROGRAMMATION PYTHON :
q Supposons que l’on souhaite enregistrer les notes d’une classe composée de 30
étudiants.
?
ALGORITHMES ET PROGRAMMATION PYTHON : LES STRUCTURES ITÉRATIVES (BOUCLE)
v Définition : tableau
Un tableau est une structure de données qui permet de stocker plusieurs valeurs du même type sous un même
nom.
q Le nombre d’éléments.
q Chacune des valeurs est repérée par (des) un indice (s) indiquant la position de l’élément dans le tableau.
ALGORITHMES ET PROGRAMMATION PYTHON
Indices
0 1 2 3 4 5 6 7 8 9
Note 8 11 14 17 9 5 14.5 13 7 2
Syntaxe :
Exemple
Algorithme : manipulation_table
Variables : i: entier
Tableau T[10] : réel ;
Debut
Pour i ← 0 jusqu’à 4 faire 2 2 2 2 2 0 0 0 0 0
T[i]←2 ; T
Finpour
Pour i ← 5 jusqu’à 9 faire
T[i]←0 ;
Finpour
Fin
ALGORITHMES ET PROGRAMMATION PYTHON :
Algorithme : manipulation_table
Variables : i: entier Une remarque : Il est possible de saisie la valeur
Tableau T[10] : réel ; d’une seule case du tableau T
Debut
Pour i ← 0 jusqu’à 9 faire T[3]ß 18
lire(T[i]);
Finpour
Fin
ALGORITHMES ET PROGRAMMATION PYTHON :
Algorithme : manipulation_table
Variables : i: entier Une remarque : Il est possible d’écrire la valeur
Tableau T[10] : réel ; d’une seule case du tableau T
Debut
Pour i ← 0 jusqu’à 9 faire Ecrire (T[3])
écrire(T[i]);
Finpour
Fin
ALGORITHMES ET PROGRAMMATION PYTHON : LES STRUCTURES ITÉRATIVES (BOUCLE)
v Exercice 10 (Tableau)
Ecrire un algorithme qui permet de saisir les notes de 5 matières puis calcule la somme de ces notes et affiche la moyenne.
Algorithme Exercice_10;
variables i : entier;
variables S,M: réel;
Tableau Note[5] : réel;
Début
Pour i ← 0 à 4 Faire
Ecrire ('Donner la note N°:’,i+1)
Lire (Note[i])
Finpour
S←0
pour i ← 0 à 4 Faire
S←S+Note[i]
Finpour
M←S/5
Ecrire ('la moyen est:' ,M)
Fin
ALGORITHMES ET PROGRAMMATION PYTHON
Syntaxe :
Exemple :
Nom_tableau[i][j] ← valeur
v Exemple :
j
0 1 2 3
i
0
T[1] [2] ← 0 1 0
2
ALGORITHMES ET PROGRAMMATION PYTHON
v Syntaxe :
pour i ←0 à 9 faire
pour j ←0 à 9 faire
Lire(T[i][j]) ;
Finpour
Finpour
v Remarque:
Il est possible de saisie la valeur d’une seule case du tableau T
T[2][3]ß12
ALGORITHMES ET PROGRAMMATION PYTHON
v Syntaxe :
pour i ←0 à 9 faire
pour j ←0 à 9 faire
Ecrire(T[i][j]) ;
Finpour
Finpour
v Remarque:
Il est possible de afficher la valeur d’une seule case du tableau T
Ecrire(T[2][3])
ALGORITHMES ET PROGRAMMATION PYTHON : INTRODUCTION À LA SYNTAXE DE BASE DE PYTHON
ALGORITHME Python
ALGORITHMES ET PROGRAMMATION PYTHON : INTRODUCTION À LA SYNTAXE DE BASE DE PYTHON
Python
v Ce langage de programmation présente de nombreuses caractéristiques intéressantes :
q Il est multiplateforme. C'est-à-dire qu'il fonctionne sur de nombreux systèmes d'exploitation : Windows, Mac
OS X, Linux, Android, iOS, depuis les mini-ordinateurs Raspberry Pi jusqu'aux supercalculateurs.
q Il est gratuit. Vous pouvez l'installer sur autant d'ordinateurs que vous voulez (même sur votre téléphone !).
q C'est un langage de haut niveau. Il demande relativement peu de connaissance sur le fonctionnement d'un
ordinateur pour être utilisé.
q C'est un langage interprété. Un script Python n'a pas besoin d'être compilé pour être exécuté, contrairement à
des langages comme le C ou le C++.
q Il est orienté objet. C'est-à-dire qu'il est possible de concevoir en Python des entités qui miment celles du
monde réel (une molécule d'ADN, une protéine, un atome, etc.) avec un certain nombre de règles de
fonctionnement et d'interactions.
q Il est relativement simple à prendre en main.
q C'est le langage de programmation le plus utilisé au monde.
ALGORITHMES ET PROGRAMMATION PYTHON : INTRODUCTION À LA SYNTAXE DE BASE DE PYTHON
Titre de février : Les langages dédiés à un domaine spécifique défient la suprématie de Python
Python est actuellement le langage de programmation le plus populaire au monde, devançant ses concurrents
directs de plus de 10 points de pourcentage.
Caractéristiques: ✔ Avantages
q exécution ligne par ligne •simple
q idéal pour tester rapidement •rapide
q apprentissage des bases •pratique pour les essais
❌ Limites
•difficile pour de grands programmes
•code non organisé
ALGORITHMES ET PROGRAMMATION PYTHON : INTRODUCTION À LA SYNTAXE DE BASE DE PYTHON
✔ Sauvegarde du code
•fichier Python (nom_programme.py)
•code réutilisable et modifiable
Algorithmique Python
L’affectation L’affectation
x ← 10 x = 10
ALGORITHMES ET PROGRAMMATION PYTHON : INTRODUCTION À LA SYNTAXE DE BASE DE PYTHON
Algorithmique Python
Variables Variables
Remarque : Les noms de variables ne doivent pas être des mots réservés du langage, comme : int, for,
if, while, break, string, float, car ces mots ont déjà une signification particulière dans le langage.
ALGORITHMES ET PROGRAMMATION PYTHON : INTRODUCTION À LA SYNTAXE DE BASE DE PYTHON
Algorithmique Python
+ +
- -
* *
/ /
DIV //
MOD %
ALGORITHMES ET PROGRAMMATION PYTHON : INTRODUCTION À LA SYNTAXE DE BASE DE PYTHON
= == égal à
<> != différent de
> > supérieur à
< < inférieur à
≥ >= supérieur ou égal
≤ <= inférieur ou égal
ET and et logique
OU or ou logique
NON not négation logique
ALGORITHMES ET PROGRAMMATION PYTHON : INTRODUCTION À LA SYNTAXE DE BASE DE PYTHON
Algorithmique Python
Algorithmique Python
Algorithmique Python
Algorithmique Python
Algorithmique Python
FinTantQue.
ALGORITHMES ET PROGRAMMATION PYTHON : INTRODUCTION À LA SYNTAXE DE BASE DE PYTHON
Algorithmique Python
Algorithmique Python
Notes = []
Tableau Nom_du_tableau [taille] : type;
Tableau vide
Notes = [12,13,19]
Tableau initialiser
ALGORITHMES ET PROGRAMMATION PYTHON
Exercice
ALGORITHMES ET PROGRAMMATION PYTHON : ÉVALUATION
vQuestion 1
Quelle instruction permet d'afficher un message en Python ?
A) echo("Bonjour")
B) print("Bonjour")
C) display("Bonjour")
D) show("Bonjour")
vQuestion 2
Quelle instruction permet de lire une valeur saisie par l’utilisateur ?
A) read()
B) input()
C) scan()
D) get()
ALGORITHMES ET PROGRAMMATION PYTHON : ÉVALUATION
vQuestion 3
Quelle est la bonne syntaxe pour affecter la valeur 10 à la variable A ?
A) A == 10
B) A := 10
C) A = 10
D) int A = 10
vQuestion 4
Quel symbole représente l’égalité dans une condition ?
A) =
B) ==
C) :=
D) ===
ALGORITHMES ET PROGRAMMATION PYTHON : ÉVALUATION
vQuestion 5
Quelle instruction permet de tester une condition ?
A) if
B) for
C) while
D) print
vQuestion 6
Quelle instruction correspond au "Sinon" en Python ?
A) elseif
B) otherwise
C) else
D) elif
ALGORITHMES ET PROGRAMMATION PYTHON : ÉVALUATION
vQuestion 7
Quelle instruction correspond au "SinonSi" en Python ?
A) elseif
B) elif
C) else if
D) ifelse
vQuestion 8
Quelle boucle correspond à "TantQue" en Python ?
A) for
B) repeat
C) while
D) loop
ALGORITHMES ET PROGRAMMATION PYTHON : ÉVALUATION
vQuestion 9
Quelle boucle correspond à "Pour" en Python ?
A) for
B) while
C) loop
D) repeat
vQuestion 10
Quelle instruction permet de quitter une boucle ?
A) stop
B) break
C) end
D) quit
ALGORITHMES ET PROGRAMMATION PYTHON : ÉVALUATION
vQuestion 11
Quel opérateur correspond à la division entière ?
A) /
B) //
C) %
D) **
vQuestion 12
Quel opérateur correspond au reste de la division ?
A) %
B) //
C) /
D) **
ALGORITHMES ET PROGRAMMATION PYTHON : ÉVALUATION
vQuestion 13
Quel mot-clé représente "ET" logique ?
A) &&
B) et
C) and
D) &
vQuestion 14
Quel mot-clé représente "OU" logique ?
A) or
B) ou
C) ||
D) xor
ALGORITHMES ET PROGRAMMATION PYTHON : ÉVALUATION
vQuestion 15
Quel mot-clé représente la négation logique ?
A) no
B) not
C) non
D) !
vQuestion 16
Quelle instruction crée une liste ?
A) L = {}
B) L = []
C) L = ()
D) L = <>
ALGORITHMES ET PROGRAMMATION PYTHON : ÉVALUATION
vQuestion 17
Comment accéder au premier élément d'une liste L ?
A) L[1]
B) L(0)
C) L[0]
D) L{0}
vQuestion 18
Comment ajouter un élément dans une liste ?
A) [Link](x)
B) [Link](x)
C) [Link](x)
D) [Link](x)
ALGORITHMES ET PROGRAMMATION PYTHON : ÉVALUATION
vQuestion 19
Quel symbole commence un commentaire en Python ?
A) //
B) #
C) --
D) **
vQuestion 20
Quelle fonction permet de connaître la taille d’une liste ?
A) size()
B) count()
C) length()
D) len()
ALGORITHMES ET PROGRAMMATION PYTHON
une chaîne de caractères (string) est une séquence de caractères utilisée pour représenter du texte.
Ø des mots
Ø des phrases
Ø des identifiants
Ø des données textuelles
Remarque :
En Python, une chaîne est un type de données fondamental utilisé dans de nombreuses applications : affichage,
traitement de texte, saisie utilisateur, etc.
ALGORITHMES ET PROGRAMMATION PYTHON : CHAÎNE DE CARACTÈRES EN PYTHON
Exemple :
nom = "Mustapha"
ville = ‘Dakhla'
message = """Bienvenue au cours de Python"""
Print(ville)
ALGORITHMES ET PROGRAMMATION PYTHON : CHAÎNE DE CARACTÈRES EN PYTHON
Exemple :
nom = "Mustapha"
Caractère M u s t a p h a
Index 0 1 2 3 4 5 6 7
Exercice :
mot = "Python"
print(mot[0]) P
print(mot[4]) o
ALGORITHMES ET PROGRAMMATION PYTHON : CHAÎNE DE CARACTÈRES EN PYTHON
Exemple :
nom = "Mustapha"
Caractère M u s t a p h a
Index -8 -7 -6 -5 -4 -3 -2 -1
Exercice :
mot = "Python"
print(mot[-3]) h
print(mot[-5]) y
ALGORITHMES ET PROGRAMMATION PYTHON : CHAÎNE DE CARACTÈRES EN PYTHON
Fonction /
Définition Syntaxe Exemple
Méthode
Retourne la longueur d’une chaîne
len() len(chaine) texte = "Python"print(len(texte)) → 6
(nombre de caractères).
Convertit tous les caractères de la texte ="python »
upper() [Link]()
chaîne en majuscules. print([Link]()) → PYTHON
Convertit tous les caractères en texte = "PYTHON »
lower() [Link]()
minuscules. print([Link]()) → python
Supprime les espaces au début et à texte = " Python »
strip() [Link]()
la fin de la chaîne. print([Link]()) → Python
texte = "Bonjour »
Remplace une sous-chaîne par une [Link](ancien,
replace() print([Link]("Bonjour","Salut")) →
autre. nouveau)
Salut
ALGORITHMES ET PROGRAMMATION PYTHON : CHAÎNE DE CARACTÈRES EN PYTHON
Fonction /
Définition Syntaxe Exemple
Méthode
Découpe une chaîne en une liste texte = "Python Java C »
split() [Link](separateur)
de mots selon un séparateur. print([Link]()) → ['Python','Java','C']
Permet de joindre les éléments mots = ["Python","Java"]
join() [Link](liste)
d’une liste en une chaîne. print(" - ".join(mots)) → Python - Java
Recherche la position d’une texte = "Python »
find() [Link](mot)
sous-chaîne dans une chaîne. print([Link]("th")) → 2
Compte le nombre
count() d’occurrences d’un caractère ou [Link](mot) texte = "banana"print([Link]("a")) → 3
mot.
Met la première lettre en texte = "python »
capitalize() [Link]()
majuscule. print([Link]()) → Python
ALGORITHMES ET PROGRAMMATION PYTHON : CHAÎNE DE CARACTÈRES EN PYTHON
6
ALGORITHMES ET PROGRAMMATION PYTHON : CHAÎNE DE CARACTÈRES EN PYTHON
PYTHON
ALGORITHMES ET PROGRAMMATION PYTHON : CHAÎNE DE CARACTÈRES EN PYTHON
python
ALGORITHMES ET PROGRAMMATION PYTHON : CHAÎNE DE CARACTÈRES EN PYTHON
vQuelle méthode permet de supprimer les espaces au début et à la fin d’une chaîne ?
«Python»
ALGORITHMES ET PROGRAMMATION PYTHON : CHAÎNE DE CARACTÈRES EN PYTHON
vQuelle méthode permet de remplacer une partie d’une chaîne par une autre ?
[’Python’,’Java’,’C’]
ALGORITHMES ET PROGRAMMATION PYTHON : CHAÎNE DE CARACTÈRES EN PYTHON
vQuelle méthode permet de joindre les éléments d’une liste en une seule chaîne ?
Python Java
ALGORITHMES ET PROGRAMMATION PYTHON : CHAÎNE DE CARACTÈRES EN PYTHON
vQuelle méthode permet de trouver la position d’un mot dans une chaîne ?
54
ALGORITHMES ET PROGRAMMATION PYTHON : CHAÎNE DE CARACTÈRES EN PYTHON
3
ALGORITHMES ET PROGRAMMATION PYTHON : CHAÎNE DE CARACTÈRES EN PYTHON
vExercice Pratique
ALGORITHMES ET PROGRAMMATION PYTHON
Chapitre 3 : Fonctions et
modularité
ALGORITHMES ET PROGRAMMATION PYTHON : FONCTIONS ET MODULARITÉ
Dans un programme complexe, écrire tout le code dans un seul bloc devient :
q difficile à lire
q difficile à maintenir
q difficile à corriger
La solution consiste à diviser le programme en plusieurs parties appelées fonctions.
Ce principe s’appelle la modularité.
ALGORITHMES ET PROGRAMMATION PYTHON : FONCTIONS ET MODULARITÉ
v Définition
v Avantages
Ø amélioration de la lisibilité
Ø réutilisation du code
Ø simplification de la maintenance
Ø réduction des erreurs
ALGORITHMES ET PROGRAMMATION PYTHON : FONCTIONS ET MODULARITÉ
Exemple :
ALGORITHMES ET PROGRAMMATION PYTHON : FONCTIONS ET MODULARITÉ
La fonction
v Définition : fonction
Une fonction est un bloc de code réutilisable qui effectue une tâche spécifique.
v Syntaxe :
Les paramètres
Def Moulinex(a,b,c):
a=b+19
c=a*2-3,14
La fonction : Moulinex return c
Valeur de C
ALGORITHMES ET PROGRAMMATION PYTHON : FONCTIONS ET MODULARITÉ
v Fonction vs Procédure
Fonction Procédure
§ Exemple
§ Exemple
Exemple :
ALGORITHMES ET PROGRAMMATION PYTHON : FONCTIONS ET MODULARITÉ
Exemple pratique
Une entreprise souhaite développer un programme Python permettant de calculer la facture d’un client.
Pour chaque produit, l’utilisateur doit saisir :
• le prix unitaire
• la quantité
Le programme doit ensuite :
Calculer le montant
Total HT Calculer la TV Calculer montant TTC Affiche facture
ALGORITHMES ET PROGRAMMATION PYTHON : FONCTIONS ET MODULARITÉ
vFonctions à utiliser :
qcalculer_ht(prix, quantite)
qcalculer_tva(montant_ht)
qcalculer_ttc(montant_ht, tva)
qafficher_facture(montant_ht, tva, ttc)
ALGORITHMES ET PROGRAMMATION PYTHON : FONCTIONS ET MODULARITÉ
résultat
ALGORITHMES ET PROGRAMMATION PYTHON : FONCTIONS ET MODULARITÉ
v Syntaxe :
def somme(a,b):
Somme= lambda a,b : a+b
return a+b
Print(somme(3,4)) Print(somme(3,4))
ALGORITHMES ET PROGRAMMATION PYTHON
Comprendre le rôle des fichiers Manipuler avec Python Distinguer CSV et JSON
Un programme peut lire des Utiliser open(...), lire ligne par CSV est pratique pour les
données déjà stockées et écrire ligne, écrire du texte, puis tableaux. JSON est plus adapté
de nouveaux résultats. Cela automatiser le traitement de aux objets, aux paramètres et aux
permet de conserver l’information données structurées. données imbriquées.
même après l’arrêt du script.
« Un bon programme ne travaille pas seulement avec des variables en mémoire ; il sait aussi
échanger des données avec des fichiers. »
ALGORITHMES ET PROGRAMMATION PYTHON : LECTURE ET ÉCRITURE DE FICHIERS
Ouvrir le Fermer le
fichier read() fichier
Lire ou écrire
ALGORITHMES ET PROGRAMMATION PYTHON : OUVRIR UN FICHIER AVEC OPEN()
Ouvrir le
Open()
fichier
f = open("[Link]", "mode")
Exemple :
§ f = open( »[Link]", "w")
§ g = open("[Link]", "a")
§ n = open("[Link]", "r+")
§ livre = open("[Link]", "r")
ALGORITHMES ET PROGRAMMATION PYTHON : LECTURE ET ÉCRITURE DE FICHIERS
Etape 1
f = open("[Link]", "w")
Etape 2
[Link]("Bonjour a tous et a toute")
[Link]()
ALGORITHMES ET PROGRAMMATION PYTHON : LECTURE ET ÉCRITURE DE FICHIERS
Fermer le
close()
fichier
Etape 1
f = open("[Link]", "w")
Etape 2
[Link]("Bonjour a tous et a toute")
[Link]()
Etape 3 [Link]()
ALGORITHMES ET PROGRAMMATION PYTHON : LECTURE ET ÉCRITURE DE FICHIERS
Exemple 1 :
Résultat :
ALGORITHMES ET PROGRAMMATION PYTHON : LECTURE ET ÉCRITURE DE FICHIERS
Exemple 2 :
Résultat :
ALGORITHMES ET PROGRAMMATION PYTHON : LECTURE ET ÉCRITURE DE FICHIERS
Question 1:
Question 2:
Combien de
lignes sont
affichées ?
ALGORITHMES ET PROGRAMMATION PYTHON : LECTURE ET ÉCRITURE DE FICHIERS
Question 3:
Qu’affiche le
programme ?
ALGORITHMES ET PROGRAMMATION PYTHON : LECTURE ET ÉCRITURE DE FICHIERS
Question 4:
Résultat final ?
ALGORITHMES ET PROGRAMMATION PYTHON : LECTURE ET ÉCRITURE DE FICHIERS
Question 5:
Résultat final ?
ALGORITHMES ET PROGRAMMATION PYTHON : LECTURE ET ÉCRITURE DE FICHIERS
v Fichier csv
Un fichier CSV (Comma-Separated Values) est un fichier texte utilisé pour stocker des données sous forme de
tableau.
q Les données sont organisées en lignes et colonnes
q Les valeurs sont séparées par un séparateur (virgule , ou point-virgule ;)
q Chaque ligne représente un enregistrement
q Chaque colonne représente un champ
Exemple :
Nom,Age,Note
Ali,20,15
Sara,21,18
ALGORITHMES ET PROGRAMMATION PYTHON : LECTURE ET ÉCRITURE DE FICHIERS
import csv
v Lire un fichier CSV
ALGORITHMES ET PROGRAMMATION PYTHON : LECTURE ET ÉCRITURE DE FICHIERS
[Link](fichier) || [Link](fichier)
ALGORITHMES ET PROGRAMMATION PYTHON : LECTURE ET ÉCRITURE DE FICHIERS
v Fichier JSON
Un fichier JSON (JavaScript Object Notation) st un fichier texte utilisé pour stocker et échanger des données de
manière structurée.
q Les données sont organisées sous forme de paires clé / valeur
q Le format est léger, lisible et facile à comprendre
q Il est utilisé pour représenter des objets et des informations complexes
Exemple :
{
"nom": "Ali",
"age": 20,
"ville": "Agadir"
}
ALGORITHMES ET PROGRAMMATION PYTHON : LECTURE ET ÉCRITURE DE FICHIERS
q { } → objet
q"clé": valeur
q séparé par des virgules
v Exemple :
Objet 1
{’marque’’:’’toyota’’,’’modele’’:2016}
Objet 2
{’’age’’:38,’’note1’’:18, ‘’note2’’:11}
ALGORITHMES ET PROGRAMMATION PYTHON : LECTURE ET ÉCRITURE DE FICHIERS
import JSON
v Lire un fichier json
ALGORITHMES ET PROGRAMMATION PYTHON : LECTURE ET ÉCRITURE DE FICHIERS
Fermeture de fichier
ALGORITHMES ET PROGRAMMATION PYTHON : LECTURE ET ÉCRITURE DE FICHIERS
v Définition : un module
Un module est un fichier Python contenant des fonctions, des variables ou des classes que l’on peut réutiliser
dans un autre programme.
q gagner du temps
q rendre le code plus organisé
q utiliser des fonctions déjà développées
q simplifier la résolution de problèmes
ALGORITHMES ET PROGRAMMATION PYTHON : BIBLIOTHÈQUES PYTHON
import nom_module
Exemple:
Module en python
CSV
from CSV import fonction4
ALGORITHMES ET PROGRAMMATION PYTHON : BIBLIOTHÈQUES PYTHON
Exemple :
Import json as encg
ALGORITHMES ET PROGRAMMATION PYTHON : BIBLIOTHÈQUES PYTHON
module
data
ALGORITHMES ET PROGRAMMATION PYTHON : BIBLIOTHÈQUES PANDAS
statistiques
ALGORITHMES ET PROGRAMMATION PYTHON : BIBLIOTHÈQUES PANDAS
v 5. Analyse statistique
On peut ajouter :
qtitre
qnoms des axes
qgrille
ALGORITHMES ET PROGRAMMATION PYTHON : BIBLIOTHÈQUES MATPLOTLIB
v la fonction : grid()
ALGORITHMES ET PROGRAMMATION PYTHON : BIBLIOTHÈQUES MATPLOTLIB
v Types de graphiques
Type Fonction
Courbe plot()
Barres bar()
Histogramme hist()
Camembert : Diagramme circulaire pie()
ALGORITHMES ET PROGRAMMATION PYTHON : BIBLIOTHÈQUES MATPLOTLIB
v Type : Barres
ALGORITHMES ET PROGRAMMATION PYTHON : BIBLIOTHÈQUES MATPLOTLIB
v Type : Histogramme
ALGORITHMES ET PROGRAMMATION PYTHON : BIBLIOTHÈQUES MATPLOTLIB
v Types de graphiques
Type Fonction
Barres barplot()
Distribution histplot()
Relation scatterplot()
Boxplot boxplot()
ALGORITHMES ET PROGRAMMATION PYTHON : BIBLIOTHÈQUES SEABORN
vBarres
ALGORITHMES ET PROGRAMMATION PYTHON : BIBLIOTHÈQUES SEABORN
vDistribution
ALGORITHMES ET PROGRAMMATION PYTHON : BIBLIOTHÈQUES SEABORN
vRelation
ALGORITHMES ET PROGRAMMATION PYTHON : BIBLIOTHÈQUES SEABORN
vBoxplot