Vous êtes sur la page 1sur 59

de

l’algorithmique vers python

16/10/2023 1
PLAN DETAILLE DU COURS
Partie I. Initiation à l’algorithmique

- Introduction Partie II. Programmation en


langage Python
- Etapes de résolution d’un
problème - Introduction
- De l’algorithme au programme - Les bases de la programmation
informatique en python
- Structure d’un algorithme - Les instructions élémentaires
- Les données - Les instructions de contrôle
- Les instructions de base - Les tableaux
- Les instructions de contrôle :
Structures conditionnelles
Structures répétitives
- Les tableaux
LES BASES DE LA
PROGRAMMATION EN Python

16/10/2023 3
LES BASES DE LA PROGRAMMATION EN Python

Langage de programmation

Définition :
On appelle langage de programmation tout
ensemble fini de mots réservés qui permettent de
traduire Les instructions de l’algorithme afin de
l’exécuter par l’ordinateur.
Exemple :

Turbo Pascal, Cobol, Fortran, C, Delphi,


Visual Basic (VB), C++, Java etc...

16/10/2023 4
LES BASES DE LA PROGRAMMATION EN Python
Langage de programmation

Trois catégories de langages :


▪ Le langage binaire : Exprimé en binaire, Automatiquement
consommables par la machine, illisibles et non portables.
▪ Les langages de bas niveau : Facilement interprétables par la
machine, lourde pour les programmeurs
Exemple : langage Assembleur
▪ Les langages évolués : Utilisation souples, produisent des
programmes clairs et lisibles.
Exemple : Python, C, C++, Visual Basic, Java...

16/10/2023 5
LES BASES DE LA PROGRAMMATION EN Python

Tout les programmes sont des suites d’instructions lisible par des humains.
Pour qu’ils fonctionnent, ils doivent être transformés en code lisible par
l’ordinateur. Il existe deux façons de faire, on peux :
Compiler le code c’est à dire le traduire en binaire. Exemple de langage
compilé : C, C++, JAVA…..
Ou
Interprété, c’est à dire le lire en temps réel et exécuter Les instructions.
C’est l’interpréteur qui se charge de faire ça. Concrètement, L’interpréteur
se charge de traduire le code humain vers du code machine en temps réel.
Exemple de langage interprété : JAVAScript, PHP, PYTHON…..

Prenons une analogie, vous essayez de préparer une recette mais elle est
en espagnole. Vous pouvez bien sûr traduire la recette avant, dans ce cas
c’est le langage compilé.

16/10/2023 6
Qu’est-ce que Python?

Langage de programmation
Créé par Guido van Rossum en 1991

Haut niveau

Interprétée

Typage dynamique

16/10/2023 7
Histoire de Python

Décembre 1989 2018


Création de Python Python est devenu le
langage de programmation
le plus populaire
Guido van Rossum

Février 1991
Publication de la 1ère
version
8

16/10/2023
Pourquoi Python ?

• Python intègre un système d'exceptions, qui permettent de


simplifier considérablement la gestion des erreurs.
• Python est langage interprétée, dans laquelle les programmes
Python sont compilés en instructions portables, puis exécutés par
une machine virtuelle (comme pour Java, avec une différence
importante: Java étant statiquement typé, il est beaucoup plus
facile d'accélérer l'exécution d'un programme Java que d'un
programme Python).
• La librairie standard de Python, et les paquetages contribués,
donnent accès à une grande variété de
services.
16/10/2023 9
Pourquoi Python ?

Syntaxe simple et facile

Portable

Adapté à des projets de petite et grande


envergure

Large bibliothèques de modules standards

Installable facilement

Différents type de structure de données

16/10/2023 10
Pourquoi Python ?
• Python est portable, non seulement sur les différentes variantes
d'UNiX, mais aussi sur les OS propriétaires: MacOS, BeOS,
NeXTStep, M$-DOS et les différentes variantes de Windows.
• Python est gratuit, mais on peut l'utiliser sans restriction dans des
projets commerciaux.
• Python convient aussi bien à des scripts d'une dizaine de lignes
qu'à des projets complexes de plusieurs dizaines de milliers de
lignes.
• Python gère ses ressources (mémoire,
descripteurs de fichiers...) sans intervention
du programmeur.

16/10/2023 11
Pourquoi Python ?

• La syntaxe de Python est très simple et, combinée à des types de


données évolués (listes, dictionnaires,...), conduit à des
programmes à la fois très compacts et très lisibles. A
fonctionnalités égales, un programme Python est souvent de 3 à 5
fois plus court qu'un programme C ou C++ (ou même Java)
équivalent, ce qui représente en général un temps de
développement de 5 à 10 fois plus court et une facilité de
maintenance largement accrue.
• Python gère ses ressources (mémoire, descripteurs de fichiers...)
sans intervention du programmeur.
16/10/2023 12
Caractéristiques clés de Python

langage de
Haut niveau interprété

fonctionne sur un code avec


différentes moins de
plates-formes lignes
procédurale,
orientée objet
ou
13 fonctionnelle

16/10/2023 13
Classement IEEE de python en 2022

16/10/2023 14
Entreprises utilisent Python

16/10/2023 15
Principales bibliothéques

16/10/2023 16
PLAN DETAILLE DU COURS
Partie I. Initiation à l’algorithmique

- Introduction Partie II. Programmation en


langage Python
- Etapes de résolution d’un
problème - Introduction
- De l’algorithme au programme - Les bases de la programmation
informatique en python
- Structure d’un algorithme - Les instructions élémentaires
- Les données - Les instructions de contrôle
- Les instructions de base - Les tableaux
- Les instructions de contrôle :
Structures conditionnelles
Structures répétitives
- Les tableaux
Python se caractérise par son
typage dynamique
 Quand un programme doit déclarer le type
de chaque variable de manière explicite ,
on parle d’un typage statique ?
statique

• lorsque programmeur n'est pas tenu de spécifier


le type de chaque variable de manière explicite,
on dit que le typage est dynamique

18
16/10/2023 18
Les variables:

une variable est un espace de stockage nommé qui permet de conserver


une valeur en mémoire. Cette valeur peut être de différents types, comme
un nombre, une chaîne de caractères, un booléen, un objet, etc.

16/10/2023 19
Variables et Constantes
❖ Type de variable
• entier (python:int) pour manipuler des entiers
• réel (python: float) pour manipuler des nombres réels
• booléen (python: bool) pour manipuler des valeurs booléennes
• Caractère (python: str) pour manipuler des caractères alphabétiques ou
numériques. On peut manipuler des chaînes de caractères permettant de
représenter des mots ou des phrases.

16/10/2023 20
Les opérateurs
Les opérateurs
Les opérateurs de
arithmétiques
comparaison Les opérateurs logiques
+ Addition
== L’égalité
And renvoie True si les
- Soustraction deux opérandes
<= Inférieur ou
sont True.
* Multiplicatio égale
n >= Supérieur ou Or renvoie True si au
/ Division égale moins un des deux
> Supérieur opérandes est
% Modulo strictement True.
< Inférieur Not renvoie l'inverse
** Puissance
strictement d'une valeur
!= La différence booléenne.
+= Addition et
afféctation

16/10/2023 21
Les opérateurs

16/10/2023 22
Déclaration des variables:

Syntaxe: Exemple:

16/10/2023 23
Remarque :

Notez bien:
On peut utiliser les
fomres courtes
pour simplifier des
opérations

16/10/2023 24
Nom des variables

Attention!
• N'utilisez jamais de symboles spéciaux tels que !, @, #, $, %, etc.
• Ne commencez pas un nom de variable par un chiffre.

16/10/2023 25
PLAN DETAILLE DU COURS
Partie I. Initiation à l’algorithmique

- Introduction Partie II. Programmation en


langage Python
- Etapes de résolution d’un
problème - Introduction
- De l’algorithme au programme - Les bases de la programmation
informatique en python
- Structure d’un algorithme - Les instructions élémentaires
- Les données - Les instructions de contrôle
- Les instructions de base - Les tableaux
- Les instructions de contrôle :
Structures conditionnelles
Structures répétitives
- Les tableaux
Initialisation, Affectation et Comparaison
Initialisation et Affectation:
• Le symbole d’affectation est le signe “=”.
• Lors d’une affectation, Python crée à la fois la valeur et la variable qui
pointe vers cette valeur.

• Pour affecter une valeur à une variable, c'est-à-dire l'initialiser ou modifier


sa valeur, on utilise l'opérateur d'affectation (=).
• À gauche de l'opérateur, on retrouve le nom de la variable et à droite la
valeur qu'on souhaite lui affecter.
• Pour accéder au contenu d'une variable, il suffit d'utiliser son nom.

16/10/2023 27
Initialisation, Affectation et Comparaison

• Affectations simultanées

• comparaison :
B== 10 ➔ égalité (pour des nombres ou des chaînes). Il s’agit de l’opérateur de
comparaison

16/10/2023 28
Commentaires

• Les commentaires sont très importants lors de l'écriture d'un programme.


• Ils décrivent ce qui se passe à l'intérieur d'un programme, de sorte qu'une
personne regardant le code source n'ait pas de mal à le comprendre.
• Les commentaires sont destinés aux programmeurs pour mieux comprendre
un programme.
• L’interpréteur Python ignore les commentaires

• Commentaire sur une ligne


( # au début de la ligne)

• Commentaire sur plusieurs liges


paragraphe entre """
16/10/2023 29
Les instructions d’Entrée /Sortie

L’instruction de sortie (affichage à l’écran)


La fonction intégrée print() sert d'instruction de sortie en
Python. Il renvoie la valeur de toute expression Python.

Syntaxe

16/10/2023 30
Les instructions d’Entrée /Sortie
L’instruction de sortie (affichage à l’écran)
Exemple :

Affichage :

16/10/2023 31
Les instructions d’Entrée /Sortie
L’instruction de sortie (affichage à l’écran)

Remarque:

On écrit Print("bonjour« , nom) ou print(" bonjour " + nom)

16/10/2023 32
Les instructions d’Entrée /Sortie

L’instruction d’entre
La fonction input() en Python permet à l'utilisateur de saisir des données à
partir du clavier et renvoie ces données sous forme de chaîne de caractères.
En Python, la fonction d'entrée est utilisée pour demander à l'utilisateur
d'entrer l'entrée par mot-clé. Celui-ci seía captuíé sous foíme de chaîne.
Synthaxe :

16/10/2023 33
Exemples : Saisie utilisateur
Exemple :

Syntaxe:
Affichage :

16/10/2023 34
Affectation et réaffectation
❖Affecter une valeur à une variable
• Contrairement à d'autres langages de programmation, Python n'a
pas de commande pour déclarer des variables.
• La déclaration se fait automatiquement lors de l'affectation de la
valeur à la variable à
l'aide du signe égal (=).
• En python, affecteí la valeuí 3 à la vaíiable « a » se code comme suit:
a = 3. Python cíée aloís
un objet de type int dont la valeuí est 3.
• Nous schématiseíons cela ainsi:

❖Réaffecter une valeur à une variable :

a=3
a = ‘’welcome ’’
Print (a) ➔ welcome

16/10/2023 35
Affectation de plusieurs valeurs à plusieurs variables
• Si on veut assigner plusieurs valeurs à plusieurs variables, on peut écrire :

• Si nous voulons affecter la même valeur à plusieurs variables à la fois, nous


pouvons écrire :

16/10/2023 36
Type de Variables
La fonction type(x):
• Pour vérifier le type d'une variable nommée x, tapez simplement la fonction
:type(x). Vous verrez plus tard ce que signifie le mot class.

16/10/2023 37
Conversion de type(casting)
Le casting en Python signifie convertir le type d'une variable. Solution :

Problème :

16/10/2023 38
Conversion de type(casting)
• Dans certains cas, nous aurons besoin de convertir notre variable d'un
type à un autre.
• En programmation, on est souvent amené à convertir les types, c'est-à-
dire passer d'un type numérique à une chaîne de caractères ou vice-
versa. En Python, rien de plus simple avec les fonctions int(),
float(),str(),bool().
• Toutes les possibilités de conversion sont présentées dans le tableau
suivant.

16/10/2023 39
Chaîne de caractère : accès par index

La chaîne "PYTHON" a six caractères, numérotés


de 0 à 5, comme indiqué ci-dessous:
|P|Y|T|H|O|N
0 1 2 3 4 5

Donc, si vous vouliez "Y", vous pouviez simplement


taper "PYTHON" [1] (toujours compter à partir de 0!)

fifth_letter= "MONTY"[4]
printfifth_letter
Y

16/10/2023 40
Les fonctions intégrées
Nous pouvons changer les chaine de caractères en utilisant les méthodes
de string qui permettent d’effectuer des tâches sur les chaînes .
Nous allons nous restreindre actuellement à :
len() : pour obtenir le nombre de caractère
Exemple :

16/10/2023 41
Les fonctions intégrées
lower() : écrire en minuscule
upper() : écrire en majuscule
Exemple :

16/10/2023 42
Les fonctions intégrées
La méthode str() transforme les nonchaînes en chaînes! Par exemple:

Exemple :

16/10/2023 43
Concaténation des String

print "SAEL " + " NAWAL "


SAEL NAWAL

16/10/2023 44
Remarques
Les fonctions intégrées au langage sont relativement peu
nombreuses: ce sont seulement celles qui sont
susceptibles d'être utilisées très fréquemment.

Les autres sont regroupées dans des fichiers séparés que


l'on appelle des modules (bibliothèque).

Les modules sont donc des fichiers qui regroupent un


ensembles de fonctions. Il existe un grand nombre de
modules pré-programmés qui sont fournis d'office avec
Python.
16/10/2023 45
Remarque (importation)
Il existe un module Python nommé math qui inclut un
certain nombre de variables et de fonctions utiles, et sqrt()
est l’une de ces fonctions.

Pour accéder aux mathématiques, il faut importer le module


import.
Exemple : import math
print math.sqrt(2)

Lorsque vous importez simplement un module de cette


façon, cela s'appelle une importation générique.

16/10/2023 46
Remarque (importation)
Il est possible d'importer uniquement certaines variables
ou fonctions d'un module donné.

On peut extraire une seule fonction d’un module s'appelle


une importation de fonction
from math import sqrt
print sqrt (2)
Pour importer tous

from math import*


print sqrt (2)
16/10/2023 47
PLAN DETAILLE DU COURS
Partie I. Initiation à l’algorithmique

- Introduction Partie II. Programmation en


langage Python
- Etapes de résolution d’un
problème - Introduction
- De l’algorithme au programme - Les bases de la programmation
informatique en python
- Structure d’un algorithme - Les instructions élémentaires
- Les données - Les instructions de contrôle
- Les instructions de base - Les tableaux
- Les instructions de contrôle :
Structures conditionnelles
Structures répétitives
- Les tableaux
La structure if simple
 sont des instructions qui permettent à un programme d'exécuter certaines actions si
une condition spécifiée est satisfaite (vraie).

Syntaxe:

Exemple

16/10/2023 49
La structure if-else
sont des instructions qui permettent à un programme d'exécuter
certaines actions si une condition spécifiée est satisfaite (vraie), et
Exemple :
d'exécuter d'autres actions alternatives si la condition n'est pas
satisfaite (fausse).
Syntaxe:

Exemple :

16/10/2023 50
La structure if imbriqué
Sont des structures conditionnelles dans lesquelles un "if" est placé
à l'intérieur d'un autre "if". Cela permet d'évaluer plusieurs
conditions successivement et d'exécuter Exemple :
différents blocs de code en
fonction des résultats des différentes conditions.

Syntaxe:

16/10/2023 51
La structure if imbriqué

Exemple :

16/10/2023 52
La boucle for
La boucle for permet d'itérer sur une séquence Exemple (liste, : tuple,
dictionnaire, chaîne de caractères, etc.) et d'exécuter un bloc de code
pour chaque élément de la séquence.

Syntaxe:

Astuce: il est
Affichage : possible d’obtenir le
même résultat sans
donner la liste des
valeurs, mais en
53 utilisant la fonction
16/10/2023 53
range()
La boucle for
Boucle « for »:
❖ Fonction range():
• Elle permet de créer une séquence d'entiers et la séquence
peut être bouclée.
• Par défaut le pas est 1 et on commence à 0.
• Toujours, la valeur finale n'est pas incluse.
• L’instruction range (a,b,pas) permet de créer une liste L
croissante ou décroissante d’entiers successifs .
Syntaxe

Example:
10
for i in 13
range(10,20, 16
3): print (i); D onne à 19
else: l’exécution: Sortie de la boucle avec
print("Sortie de la boucle i= 19
avec i=",i);
16/10/2023 54
La boucle while

La boucle "while" en Python exécute un bloc de code tant qu'une


condition est vraie.

Syntaxe:

16/10/2023 55
Instructions répétitives

Boucle « while »:

Exemple:

16/10/2023 56
Instruction « break » et « continue »
• En Python, Les instructions break et continue peuvent modifier le flux
d’une boucle normale.
• Les boucles parcourent un bloc de code jusqu’à ce que la condition soit
fausse, mais nous souhaitons parfois mettre fin à l’itération en cours ou
même à la totalité de la boucle sans vérifier la condition.

16/10/2023 57
Instruction « break » et « continue »
Instruction « break » :
• Break est utilisé pour quitter une boucle while/for.
Exemple : O n utilise la boucle « while »

Résultat

Exemple :O n utilise la boucle « for »

Résultat

16/10/2023 58
Instruction « break » et « continue »
Instruction « continue » :
continue est utilisé pour ignorer le bloc actuel et revenir à
l’instruction
while/for.

Exemple : O n utilise la boucle « Exemple : O n utilise la boucle


while » « for »

Résultat Résultat

16/10/2023 59

Vous aimerez peut-être aussi