[go: up one dir, main page]

0% ont trouvé ce document utile (0 vote)
18 vues46 pages

POO Introduction À Python 15H IS2G

Ce document présente une introduction à la programmation en Python, couvrant les bases, la syntaxe, les variables et les opérateurs. Il aborde également la programmation orientée objet et fournit des exemples pratiques pour illustrer les concepts. Le tutoriel est structuré en séances, chacune se concentrant sur des aspects spécifiques de Python.

Transféré par

alainkarnonkone
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats DOCX, PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
18 vues46 pages

POO Introduction À Python 15H IS2G

Ce document présente une introduction à la programmation en Python, couvrant les bases, la syntaxe, les variables et les opérateurs. Il aborde également la programmation orientée objet et fournit des exemples pratiques pour illustrer les concepts. Le tutoriel est structuré en séances, chacune se concentrant sur des aspects spécifiques de Python.

Transféré par

alainkarnonkone
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats DOCX, PDF, TXT ou lisez en ligne sur Scribd
Vous êtes sur la page 1/ 46

PROGRAMMATION ORIENTEE

OBJET

1
SOMMAIRE

Seance 1 : les bases de Python


1-Introduction à Python
2-Syntaxe Python
3-Commentaires Python
4-Variables Python
Seance 2 : Python avancé
5-Opérateurs Python
6-Listes Python
7-Tuples Python
8-Python Si... Sinon
9-Boucles while Python
10- Python pour les boucles
11- Fonctions Python

Seance 3 : PROGRAMMATION ORIENTEE OBJET

12-Classes/objets Python

2
1- Introduction à Python

Qu’est-ce que Python ?

Python est un langage de programmation populaire. Il a été créé par Guido van
Rossum et sorti en 1991.
Il est utilisé pour :
 développement web (côté serveur),
 développement de logiciels,
 mathématiques,
 scripts système.

Que peut faire Python ?

 Python peut être utilisé sur un serveur pour créer des applications Web.
 Python peut être utilisé avec un logiciel pour créer des flux de travail.
 Python peut se connecter aux systèmes de bases de données. Il peut
également lire et modifier des fichiers.
 Python peut être utilisé pour gérer du Big Data et effectuer des
mathématiques complexes.
 Python peut être utilisé pour le prototypage rapide ou pour le
développement de logiciels prêts pour la production.
Pourquoi Python ?
 Python fonctionne sur différentes plateformes (Windows, Mac, Linux,
Raspberry Pi, etc.).
 Python a une syntaxe simple similaire à la langue anglaise.
 Python a une syntaxe qui permet aux développeurs d'écrire des
programmes avec moins de lignes que certains autres langages de
programmation.
 Python fonctionne sur un système interpréteur, ce qui signifie que le code
peut être exécuté dès son écriture. Cela signifie que le prototypage peut
être très rapide.
 Python peut être traité de manière procédurale, orientée objet ou
fonctionnelle.

3
Bon à savoir
 La version majeure la plus récente de Python est Python 3, que nous
utiliserons dans ce tutoriel. Cependant, Python 2, bien qu’il ne soit pas mis
à jour avec autre chose que des mises à jour de sécurité, est toujours très
populaire.
 Dans ce tutoriel, Python sera écrit dans un éditeur de texte. Il est possible
d'écrire Python dans un environnement de développement intégré, tel que
Thonny, Pycharm, Netbeans ou Eclipse, qui sont particulièrement utiles
lors de la gestion de plus grandes collections de fichiers Python.

Syntaxe Python comparée à d'autres langages de programmation


 Python a été conçu pour la lisibilité et présente certaines similitudes avec
la langue anglaise influencée par les mathématiques.
 Python utilise de nouvelles lignes pour compléter une commande,
contrairement à d'autres langages de programmation qui utilisent souvent
des points-virgules ou des parenthèses.
 Python s'appuie sur l'indentation, en utilisant des espaces, pour définir la
portée ; comme la portée des boucles, des fonctions et des classes.
D'autres langages de programmation utilisent souvent des accolades à
cette fin.

Exemple :

print("Hello, World!")

Installation de Python

Python est déjà installé sur de nombreux PC et Mac.

Pour vérifier si Python est installé sur un PC Windows, recherchez Python dans
la barre de démarrage ou exécutez ce qui suit sur la ligne de commande
(cmd.exe) :

C:\Users\Your Name>python --version

Pour vérifier si Python est installé sur Linux ou Mac, puis sous Linux, ouvrez la
ligne de commande ou sur Mac, ouvrez le terminal et tapez :

python --version

Si vous constatez que Python n'est pas installé sur votre ordinateur, vous
pouvez le télécharger gratuitement à partir du site Web
suivant : https://www.python.org/

4
Démarrage rapide Python

Python est un langage de programmation interprété, cela signifie qu'en tant


que développeur, vous écrivez des fichiers Python (.py) dans un éditeur de
texte, puis placez ces fichiers dans l'interpréteur Python pour être exécutés.

La façon d'exécuter un fichier python est la suivante sur la ligne de


commande :

C:\Users\Your Name>python helloworld.py

Où "helloworld.py" est le nom de votre fichier python.

Écrivons notre premier fichier Python, appelé helloworld.py, qui peut être
réalisé dans n'importe quel éditeur de texte.

bonjour le monde.py
print("Hello, World!")

Aussi simple que cela. Enregistrez votre fichier. Ouvrez votre ligne de
commande, accédez au répertoire dans lequel vous avez enregistré votre
fichier et exécutez :

C:\Users\Your Name>python helloworld.py

Le résultat doit être le suivant :

Hello, World!

Félicitations, vous avez écrit et exécuté votre premier programme Python.

2- Syntaxe Python

Exécuter la syntaxe Python

Comme nous l'avons appris dans la page précédente, la syntaxe Python peut
être exécutée en écrivant directement dans la ligne de commande :

>>> print("Hello, World!")


Hello, World!

Ou en créant un fichier python sur le serveur, en utilisant l'extension de


fichier .py et en l'exécutant dans la ligne de commande :

5
C:\Users\Your Name>python myfile.py

Indentation Python

L'indentation fait référence aux espaces au début d'une ligne de code.

Alors que dans d'autres langages de programmation, l'indentation dans le


code est uniquement destinée à la lisibilité, l'indentation en Python est très
importante.

Python utilise l'indentation pour indiquer un bloc de code.

Exemple
if 5 > 2:
print("Five is greater than two!")

Python vous donnera une erreur si vous ignorez l'indentation :

Exemple
Erreur de syntaxe:

if 5 > 2:
print("Five is greater than two!")

Le nombre d'espaces dépend de vous en tant que programmeur, l'utilisation


la plus courante est de quatre, mais il doit y en avoir au moins un.

Exemple
if 5 > 2:
print("Five is greater than two!")
if 5 > 2:
print("Five is greater than two!")

3- Commentaires Python

Les commentaires peuvent être utilisés pour expliquer le code Python.

Les commentaires peuvent être utilisés pour rendre le code plus lisible.

6
Les commentaires peuvent être utilisés pour empêcher l’exécution lors du
test du code.

Créer un commentaire
Les commentaires commencent par un #, et Python les ignorera :

#This is a comment
print("Hello, World!")

Commentaires multilignes
Python n'a pas vraiment de syntaxe pour les commentaires multilignes.

Pour ajouter un commentaire multiligne, vous pouvez insérer un #pour


chaque ligne :

Exemple
#This is a comment
#written in
#more than just one line
print("Hello, World!")

Ou, pas tout à fait comme prévu, vous pouvez utiliser une chaîne multiligne.

Puisque Python ignorera les chaînes littérales qui ne sont pas affectées à une
variable, vous pouvez ajouter une chaîne multiligne (guillemets triples) dans
votre code et y placer votre commentaire :

Exemple
"""
This is a comment
written in
more than just one line
"""
print("Hello, World!")

4- Variables Python
7
Variables

Les variables sont des conteneurs permettant de stocker des valeurs de


données.

Création de variables

Python n'a pas de commande pour déclarer une variable.

Une variable est créée au moment où vous lui attribuez une valeur pour la
première fois.

Exemple
x = 5
y = "John"
print(x)
print(y)

Les variables n'ont pas besoin d'être déclarées avec un type particulier et
peuvent même changer de type après avoir été définies.

x = 4 # x is of type int
x = "Sally" # x is now of type str
print(x)

Fonderie

Si vous souhaitez spécifier le type de données d'une variable, cela peut être
fait avec le casting.

Exemple
x = str(3) # x will be '3'
y = int(3) # y will be 3
z = float(3) # z will be 3.0

Obtenez le type

Vous pouvez obtenir le type de données d'une variable avec


la type()fonction.

Exemple
8
x = 5
y = "John"
print(type(x))
print(type(y))

Devis simples ou doubles ?

Les variables de chaîne peuvent être déclarées en utilisant des guillemets


simples ou doubles :

Exemple
x = "John"
# is the same as
x = 'John'

Sensible aux majuscules et minuscules

Les noms de variables sont sensibles à la casse.

Exemple
Cela créera deux variables :

a = 4
A = "Sally"
#A will not overwrite a

Python – Noms de variables

Noms des variables


Une variable peut avoir un nom court (comme x et y) ou un nom plus
descriptif (age, carname, total_volume). Règles pour les variables Python :

 Un nom de variable doit commencer par une lettre ou le caractère de


soulignement
 Un nom de variable ne peut pas commencer par un nombre
 Un nom de variable ne peut contenir que des caractères
alphanumériques et des traits de soulignement (Az, 0-9 et _ )
 Les noms de variables sont sensibles à la casse (age, Age et AGE sont
trois variables différentes)
 Un nom de variable ne peut pas être l'un des mots-clés Python .

 Exemple
 Noms de variables légaux :

9
 myvar = "John"
my_var = "John"
_my_var = "John"
myVar = "John"
MYVAR = "John"
myvar2 = "John"

Variables Python - Attribuer plusieurs valeurs

De nombreuses valeurs pour


plusieurs variables
Python vous permet d'attribuer des valeurs à plusieurs variables sur une
seule ligne :

Exemple
x, y, z = "Orange", "Banana", "Cherry"
print(x)
print(y)
print(z)

Une valeur pour plusieurs variables


Et vous pouvez attribuer la même valeur à plusieurs variables sur une seule
ligne :

Exemple
x = y = z = "Orange"
print(x)
print(y)
print(z)

Décompresser une collection


Si vous avez une collection de valeurs dans une liste, un tuple, etc. Python
vous permet d'extraire les valeurs dans des variables. C'est ce qu'on
appelle le déballage .

Exemple
Décompressez une liste :

10
fruits = ["apple", "banana", "cherry"]
x, y, z = fruits
print(x)
print(y)
print(z)

Python - Variables de sortie

Variables de sortie
La fonction Python print()est souvent utilisée pour générer des variables.

Exemple
x = "Python is awesome"
print(x)

Dans la print()fonction, vous affichez plusieurs variables, séparées par une


virgule :

Exemple
x = "Python"
y = "is"
z = "awesome"
print(x, y, z)

11
Example Data Type

x = "Hello World" str

x = 20 int

x = 20.5 float

x = 1j complex

x = ["apple", "banana", "cherry"] list

x = ("apple", "banana", "cherry") tuple

x = range(6) range

x = {"name" : "John", "age" : 36} dict

x = {"apple", "banana", "cherry"} set

x = frozenset({"apple", "banana", "cherry"}) frozenset

x = True bool

x = b"Hello" bytes

x = bytearray(5) bytearray

12

x = memoryview(bytes(5)) memoryview
Vous pouvez également utiliser l' +opérateur pour générer plusieurs
variables :

Exemple
x = "Python "
y = "is "
z = "awesome"
print(x + y + z)

Pour les nombres, le +caractère fonctionne comme un opérateur


mathématique :

Exemple
x = 5
y = 10
print(x + y)

La meilleure façon d'afficher plusieurs variables dans la print()fonction est


de les séparer par des virgules, qui prennent même en charge différents
types de données :

Exemple
x = 5
y = "John"
print(x, y)

Définition du type de données


En Python, le type de données est défini lorsque vous attribuez une valeur à
une variable :

Exemple
Nombres entiers :

x = 1
y = 35656222554887711
z = -3255522

print(type(x))
print(type(y))
print(type(z))

13
Nombre aléatoire
Python n'a pas de random()fonction pour créer un nombre aléatoire, mais
Python a un module intégré appelé randomqui peut être utilisé pour créer des
nombres aléatoires :

Exemple
Importez le module aléatoire, et affichez un nombre aléatoire entre 1 et 9 :

import random

print(random.randrange(1, 10))

Spécifier un type de variable


Il peut arriver que vous souhaitiez spécifier un type sur une variable. Cela
peut être fait avec le casting. Python est un langage orienté objet et, en tant
que tel, il utilise des classes pour définir les types de données, y compris ses
types primitifs.

Le casting en python se fait donc à l'aide de fonctions constructeur :

 int() - construit un nombre entier à partir d'un littéral entier, d'un


littéral flottant (en supprimant toutes les décimales) ou d'une chaîne
littérale (à condition que la chaîne représente un nombre entier)
 float() - construit un nombre flottant à partir d'un littéral entier, d'un
littéral flottant ou d'une chaîne littérale (à condition que la chaîne
représente un flottant ou un entier)
 str() - construit une chaîne à partir d'une grande variété de types de
données, notamment des chaînes, des littéraux entiers et des littéraux
flottants

 Exemple
 Nombres entiers :
 x = int(1) # x will be 1
y = int(2.8) # y will be 2
z = int("3") # z will be 3

 Exemple
 Flotteurs :
 x = float(1) # x will be 1.0
y = float(2.8) # y will be 2.8

14
z = float("3") # z will be 3.0
w = float("4.2") # w will be 4.2

5- Opérateurs Python

 Opérateurs Python
 Les opérateurs sont utilisés pour effectuer des opérations sur des
variables et des valeurs.
 Dans l'exemple ci-dessous, nous utilisons l' +opérateur pour additionner
deux valeurs :
 Exemple
 print(10 + 5)

 Opérateurs arithmétiques Python


 Les opérateurs arithmétiques sont utilisés avec des valeurs numériques
pour effectuer des opérations mathématiques courantes :

15
Operator Name Example

+ Addition x+y

- Subtraction x-y

* Multiplication x*y

/ Division x/y

% Modulus x%y

** Exponentiation x ** y

// Floor division x // y

Opérateurs de comparaison Python


Les opérateurs de comparaison sont utilisés pour comparer deux valeurs :

Operator Name Example

== Equal x == y

!= Not equal x != y

16
> Greater than x>y

< Less than x<y

>= Greater than or equal to x >= y

<= Less than or equal to x <= y

6- Liste
Les listes sont utilisées pour stocker plusieurs éléments dans une seule
variable.

Les listes sont l'un des 4 types de données intégrés à Python utilisés pour
stocker des collections de données, les 3 autres
sont Tuple , Set et Dictionary , tous avec des qualités et des utilisations
différentes.

Les listes sont créées à l'aide de crochets :

Exemple
Créer une liste:

thislist = ["apple", "banana", "cherry"]


print(thislist)

Éléments de la liste
Les éléments de la liste sont ordonnés, modifiables et autorisent les valeurs
en double.

Les éléments de la liste sont indexés, le premier élément a un index [0], le


deuxième élément a un index [1], etc.

17
Commandé
Quand nous disons que les listes sont ordonnées, cela signifie que les
éléments ont un ordre défini et que cet ordre ne changera pas.

Si vous ajoutez de nouveaux éléments à une liste, les nouveaux éléments


seront placés à la fin de la liste.

Remarque : Certaines méthodes de liste modifieront l'ordre, mais en


général : l'ordre des éléments ne changera pas.

Changeable
La liste est modifiable, ce qui signifie que nous pouvons modifier, ajouter et
supprimer des éléments dans une liste après sa création.

Autoriser les doublons


Puisque les listes sont indexées, les listes peuvent contenir des éléments
avec la même valeur :

Exemple
Les listes autorisent les valeurs en double :

thislist = ["apple", "banana", "cherry", "apple", "cherry"]


print(thislist)

7- Tuples Python

mytuple = ("apple", "banana", "cherry")

Tuple
Les tuples sont utilisés pour stocker plusieurs éléments dans une seule
variable.

18
Tuple est l'un des 4 types de données intégrés à Python utilisés pour stocker
des collections de données, les 3 autres sont List , Set et Dictionary , tous
avec des qualités et des utilisations différentes.

Un tuple est une collection ordonnée et immuable.

Les tuples sont écrits entre parenthèses.

Exemple
Créez un tuple :

thistuple = ("apple", "banana", "cherry")


print(thistuple)

Articles de tuples
Les éléments de tuple sont ordonnés, immuables et autorisent les valeurs en
double.

Les éléments de tuple sont indexés, le premier élément a un index [0], le


deuxième élément a un index [1], etc.

Commandé
Quand nous disons que les tuples sont ordonnés, cela signifie que les
éléments ont un ordre défini et que cet ordre ne changera pas.

Non modifiable
Les tuples ne sont pas modifiables, ce qui signifie que nous ne pouvons pas
modifier, ajouter ou supprimer des éléments une fois le tuple créé.

Autoriser les doublons


Puisque les tuples sont indexés, ils peuvent avoir des éléments avec la même
valeur :

19
Exemple
Les tuples autorisent les valeurs en double :

thistuple = ("apple", "banana", "cherry", "apple", "cherry")


print(thistuple)

Longueur du tuple
Pour déterminer le nombre d'éléments d'un tuple, utilisez la len()fonction :

Exemple
Imprimez le nombre d'éléments dans le tuple :

thistuple = ("apple", "banana", "cherry")


print(len(thistuple))

Créer un tuple avec un élément


Pour créer un tuple avec un seul élément, vous devez ajouter une virgule
après l'élément, sinon Python ne le reconnaîtra pas comme un tuple.

Exemple
Un tuple d'éléments, rappelez-vous la virgule :

thistuple = ("apple",)
print(type(thistuple))

#NOT a tuple
thistuple = ("apple")
print(type(thistuple))

Éléments de tuple – Types de


données
Les éléments de tuple peuvent être de n’importe quel type de données :

20
Exemple
Types de données chaîne, int et booléen :

tuple1 = ("apple", "banana", "cherry")


tuple2 = (1, 5, 7, 9, 3)
tuple3 = (True, False, False)

Un tuple peut contenir différents types de données :

Exemple
Un tuple avec des chaînes, des entiers et des valeurs booléennes :

tuple1 = ("abc", 34, True, 40, "male")

taper()
Du point de vue de Python, les tuples sont définis comme des objets avec le
type de données « tuple » :

<class 'tuple'>
Exemple
Quel est le type de données d’un tuple ?

mytuple = ("apple", "banana", "cherry")


print(type(mytuple))

Le constructeur tuple()
Il est également possible d'utiliser le constructeur tuple() pour créer un
tuple.

Exemple
Utiliser la méthode tuple() pour créer un tuple :

thistuple = tuple(("apple", "banana", "cherry")) # note the


double round-brackets
print(thistuple)

21
Collections Python (tableaux)
Il existe quatre types de données de collecte dans le langage de
programmation Python :

 La liste est une collection ordonnée et modifiable. Autorise les


membres en double.
 Tuple est une collection ordonnée et immuable. Autorise les membres
en double.
 Set est une collection non ordonnée, immuable* et non indexée. Pas de
membres en double.
 Le dictionnaire est une collection ordonnée** et modifiable. Pas de
membres en double.

* Les éléments définis ne sont pas modifiables, mais vous pouvez supprimer
et/ou ajouter des éléments à tout moment.

**À partir de la version 3.7 de Python, les dictionnaires sont ordonnés . Dans
Python 3.6 et versions antérieures, les dictionnaires ne sont pas ordonnés .

Lors du choix d’un type de collection, il est utile de comprendre les propriétés
de ce type. Choisir le bon type pour un ensemble de données particulier peut
signifier une rétention de sens et une augmentation de l'efficacité ou de la
sécurité.

8- Python Si... Sinon

Conditions Python et instructions If


Python prend en charge les conditions logiques habituelles des
mathématiques :

 Est égal à : a == b
 N'est pas égal : a != b
 Inférieur à : a < b
 Inférieur ou égal à : a <= b
 Supérieur à : a > b
 Supérieur ou égal à : a >= b

Ces conditions peuvent être utilisées de plusieurs manières, le plus souvent


dans les « instructions if » et les boucles.

22
Une « instruction if » est écrite à l’aide du mot-clé if .

Exemple
Si instruction :

a = 33
b = 200
if b > a:
print("b is greater than a")

Dans cet exemple, nous utilisons deux variables, a et b , qui sont utilisées
dans le cadre de l'instruction if pour tester si b est supérieur à a .
Comme a est 33 et b est 200 , nous savons que 200 est supérieur à 33, et
nous imprimons donc à l'écran que "b est supérieur à a".

Échancrure
Python s'appuie sur l'indentation (espace au début d'une ligne) pour définir la
portée dans le code. D'autres langages de programmation utilisent souvent
des accolades à cette fin.

Exemple
Instruction If, sans indentation (généra une erreur) :

a = 33
b = 200
if b > a:
print("b is greater than a") # you will get an error

Elif
Le mot-clé elif est la façon dont Python dit "si les conditions précédentes
n'étaient pas vraies, alors essayez cette condition".

Exemple
a = 33
b = 33
if b > a:
print("b is greater than a")
elif a == b:
print("a and b are equal")

23
Dans cet exemple, a est égal à b , donc la première condition n'est pas vraie,
mais la condition elif est vraie, donc nous imprimons à l'écran que "a et b
sont égaux".

Autre
Le mot-clé else détecte tout ce qui n'est pas détecté par les conditions
précédentes.

Exemple
a = 200
b = 33
if b > a:
print("b is greater than a")
elif a == b:
print("a and b are equal")
else:
print("a is greater than b")

Dans cet exemple , a est supérieur à b , donc la première condition n'est pas
vraie, la condition elif n'est pas non plus vraie, donc nous passons à la
condition else et imprimons à l'écran que "a est supérieur à b".

Vous pouvez également en avoir un elsesans elif:

Exemple
a = 200
b = 33
if b > a:
print("b is greater than a")
else:
print("b is not greater than a")

Main courte si
Si vous n'avez qu'une seule instruction à exécuter, vous pouvez la mettre sur
la même ligne que l'instruction if.

Exemple
24
Une ligne if instruction :

if a > b: print("a is greater than b")

Main courte si... Sinon


Si vous n'avez qu'une seule instruction à exécuter, une pour if et une pour
else, vous pouvez tout mettre sur la même ligne :

Exemple
Une ligne if else :

a = 2
b = 330
print("A") if a > b else print("B")
Cette technique est connue sous le nom d'opérateurs
ternaires ou d'expressions conditionnelles .

Vous pouvez également avoir plusieurs instructions else sur la même ligne :

Exemple
Une ligne if else, avec 3 conditions :

a = 330
b = 330
print("A") if a > b else print("=") if a == b else print("B")

Et
Le mot-clé and est un opérateur logique et est utilisé pour combiner des
instructions conditionnelles :

Exemple
Testez si aest supérieur à b, ET si c est supérieur àa :

a = 200
b = 33
c = 500
if a > b and c > a:

25
print("Both conditions are True")

Ou
Le ormot-clé est un opérateur logique et est utilisé pour combiner des
instructions conditionnelles :

Exemple
Testez si aest supérieur à b, OU si a est supérieur àc :

a = 200
b = 33
c = 500
if a > b or a > c:
print("At least one of the conditions is True")

Pas
Le notmot-clé est un opérateur logique et est utilisé pour inverser le résultat
de l'instruction conditionnelle :

Exemple
Testez si an'est PAS supérieur à b :

a = 33
b = 200
if not a > b:
print("a is NOT greater than b")

Imbriqué si
Vous pouvez avoir ifdes instructions à l'intérieur ifd'instructions, c'est ce
qu'on appelle des instructions imbriquées if .

Exemple
26
x = 41

if x > 10:
print("Above ten,")
if x > 20:
print("and also above 20!")
else:
print("but not above 20.")

La déclaration de réussite
ifles instructions ne peuvent pas être vides, mais si, pour une raison
quelconque, vous avez une ifinstruction sans contenu, insérez-la passpour
éviter d'obtenir une erreur.

Exemple
a = 33
b = 200

if b > a:
pass

9- Boucles while Python

Boucles Python
Python a deux commandes de boucle primitives :

 boucles while
 pour les boucles

La boucle while
Avec la boucle while , nous pouvons exécuter un ensemble d'instructions
tant qu'une condition est vraie.

27
Exemple
Imprimez i tant que i est inférieur à 6 :

i = 1
while i < 6:
print(i)
i += 1

Remarque : n'oubliez pas d'incrémenter i, sinon la boucle continuera


indéfiniment.

La boucle while nécessite que les variables pertinentes soient prêtes. Dans
cet exemple, nous devons définir une variable d'indexation, i , que nous
définissons sur 1.

La déclaration de pause
Avec l' instruction break , nous pouvons arrêter la boucle même si la
condition while est vraie :

Exemple
Quittez la boucle quand i a 3 :

i = 1
while i < 6:
print(i)
if i == 3:
break
i += 1

La déclaration continue
Avec l' instruction continue , nous pouvons arrêter l'itération en cours et
continuer avec la suivante :

Exemple
Passez à l'itération suivante si i vaut 3 :

i = 0
while i < 6:

28
i += 1
if i == 3:
continue
print(i)

La déclaration else
Avec l' instruction else , nous pouvons exécuter un bloc de code une fois
lorsque la condition n'est plus vraie :

Exemple
Imprimer un message une fois la condition fausse :

i = 1
while i < 6:
print(i)
i += 1
else:
print("i is no longer less than 6")

10- Python pour les boucles

Python pour les boucles


Une boucle for est utilisée pour parcourir une séquence (c'est-à-dire une
liste, un tuple, un dictionnaire, un ensemble ou une chaîne).

Cela ressemble moins au mot-clé for dans d'autres langages de


programmation et fonctionne davantage comme une méthode itérative que
l'on trouve dans d'autres langages de programmation orientés objet.

Avec la boucle for , nous pouvons exécuter un ensemble d'instructions, une


fois pour chaque élément d'une liste, tuple, ensemble, etc.

Exemple
Imprimez chaque fruit dans une liste de fruits :

29
fruits = ["apple", "banana", "cherry"]
for x in fruits:
print(x)

La boucle for ne nécessite pas de définition préalable d’une variable


d’indexation.

Faire une boucle sur une chaîne


Même les chaînes sont des objets itérables, elles contiennent une séquence
de caractères :

Exemple
Parcourez les lettres du mot « banane » :

for x in "banana":
print(x)

La déclaration de pause
Avec l' instruction break , nous pouvons arrêter la boucle avant qu'elle n'ait
parcouru tous les éléments :

Exemple
Quittez la boucle quand xest "banane" :

fruits = ["apple", "banana", "cherry"]


for x in fruits:
print(x)
if x == "banana":
break

Exemple
Sortez de la boucle quand xest "banane", mais cette fois le break intervient
avant l'impression :

fruits = ["apple", "banana", "cherry"]


for x in fruits:
if x == "banana":

30
break
print(x)

La déclaration continue
Avec l' instruction continue , nous pouvons arrêter l'itération en cours de la
boucle et continuer avec la suivante :

Exemple
Ne pas imprimer la banane :

fruits = ["apple", "banana", "cherry"]


for x in fruits:
if x == "banana":
continue
print(x)

La fonction range()
Pour parcourir un ensemble de code un nombre de fois spécifié, nous pouvons
utiliser la fonction range() ,

La fonction range() renvoie une séquence de nombres, commençant à 0 par


défaut, incrémentée de 1 (par défaut) et se terminant à un nombre spécifié.

Exemple
Utilisation de la fonction range() :

for x in range(6):
print(x)
Notez que range(6) ne correspond pas aux valeurs de 0 à 6, mais aux
valeurs de 0 à 5.

La fonction range() est par défaut 0 comme valeur de départ, cependant il


est possible de spécifier la valeur de départ en ajoutant un
paramètre : range(2, 6) , ce qui signifie des valeurs de 2 à 6 (mais sans
compter 6) :

31
Exemple
Utilisation du paramètre start :

for x in range(2, 6):


print(x)

La fonction range() incrémente par défaut la séquence de 1, cependant il est


possible de spécifier la valeur d'incrément en ajoutant un troisième
paramètre : range(2, 30, 3 ) :

Exemple
Incrémentez la séquence de 3 (la valeur par défaut est 1) :

for x in range(2, 30, 3):


print(x)

Sinon dans la boucle For


Le elsemot clé dans une forboucle spécifie un bloc de code à exécuter
lorsque la boucle est terminée :

Exemple
Imprimez tous les nombres de 0 à 5 et imprimez un message lorsque la
boucle est terminée :

for x in range(6):
print(x)
else:
print("Finally finished!")

Remarque : Le elsebloc ne sera PAS exécuté si la boucle est arrêtée par


une breakinstruction.

Exemple
Brisez la boucle lorsque xvaut 3 et voyez ce qui se passe avec le elsebloc :

for x in range(6):
if x == 3: break
print(x)
else:
print("Finally finished!")

32
Boucles imbriquées
Une boucle imbriquée est une boucle à l’intérieur d’une boucle.

La « boucle interne » sera exécutée une fois pour chaque itération de la «


boucle externe » :

Exemple
Imprimez chaque adjectif pour chaque fruit :

adj = ["red", "big", "tasty"]


fruits = ["apple", "banana", "cherry"]

for x in adj:
for y in fruits:
print(x, y)

La déclaration de réussite
forles boucles ne peuvent pas être vides, mais si, pour une raison
quelconque, vous avez une forboucle sans contenu, insérez l' passinstruction
pour éviter d'obtenir une erreur.

Exemple
for x in [0, 1, 2]:
pass

11- Fonctions Python

Une fonction est un bloc de code qui ne s'exécute que lorsqu'elle est
appelée.

Vous pouvez transmettre des données, appelées paramètres, dans une


fonction.

En conséquence, une fonction peut renvoyer des données.

33
Création d'une fonction
En Python, une fonction est définie à l'aide du mot-clé def :

Exemple
def my_function():
print("Hello from a function")

Appeler une fonction


Pour appeler une fonction, utilisez le nom de la fonction suivi de parenthèses :

Exemple
def my_function():
print("Hello from a function")

my_function()

Arguments
Les informations peuvent être transmises aux fonctions sous forme
d'arguments.

Les arguments sont spécifiés après le nom de la fonction, entre parenthèses.


Vous pouvez ajouter autant d’arguments que vous le souhaitez, il suffit de les
séparer par une virgule.

L'exemple suivant a une fonction avec un argument (fname). Lorsque la


fonction est appelée, nous transmettons un prénom, qui est utilisé à
l'intérieur de la fonction pour imprimer le nom complet :

Exemple
def my_function(fname):
print(fname + " Refsnes")

my_function("Emil")
my_function("Tobias")
my_function("Linus")

34
Les arguments sont souvent raccourcis en arguments dans les
documentations Python.

Paramètres ou arguments ?
Les termes paramètre et argument peuvent être utilisés pour la même
chose : des informations transmises à une fonction.

Du point de vue d'une fonction :

Un paramètre est la variable répertoriée entre parenthèses dans la définition


de la fonction.

Un argument est la valeur envoyée à la fonction lors de son appel.

Nombre d'arguments
Par défaut, une fonction doit être appelée avec le bon nombre d'arguments.
Cela signifie que si votre fonction attend 2 arguments, vous devez appeler la
fonction avec 2 arguments, ni plus ni moins.

Exemple
Cette fonction attend 2 arguments et obtient 2 arguments :

def my_function(fname, lname):


print(fname + " " + lname)

my_function("Emil", "Refsnes")
Si vous essayez d'appeler la fonction avec 1 ou 3 arguments, vous obtiendrez
une erreur :
Exemple
Cette fonction attend 2 arguments, mais n'en obtient que 1 :

def my_function(fname, lname):


print(fname + " " + lname)

my_function("Emil")

35
Arguments arbitraires, *args
Si vous ne savez pas combien d'arguments seront transmis à votre fonction,
ajoutez un *avant le nom du paramètre dans la définition de la fonction.

De cette façon, la fonction recevra un tuple d'arguments et pourra accéder


aux éléments en conséquence :

Exemple
Si le nombre d'arguments est inconnu, ajoutez un *avant le nom du
paramètre :

def my_function(*kids):
print("The youngest child is " + kids[2])

my_function("Emil", "Tobias", "Linus")


Les arguments arbitraires sont souvent abrégés en *args dans les
documentations Python.

Arguments de mots clés


Vous pouvez également envoyer des arguments avec la
syntaxe clé = valeur .

De cette façon, l’ordre des arguments n’a pas d’importance.

Exemple
def my_function(child3, child2, child1):
print("The youngest child is " + child3)

my_function(child1 = "Emil", child2 = "Tobias", child3 = "Linus")


L'expression Arguments de mots-clés est souvent abrégée en kwargs dans les
documentations Python.

Arguments de mots clés arbitraires,


**kwargs

36
Si vous ne savez pas combien d'arguments de mot-clé seront transmis à votre
fonction, ajoutez deux astérisques : **avant le nom du paramètre dans la
définition de la fonction.

De cette façon, la fonction recevra un dictionnaire d'arguments et pourra


accéder aux éléments en conséquence :

Exemple
Si le nombre d'arguments du mot-clé est inconnu, ajoutez un double **avant
le nom du paramètre :

def my_function(**kid):
print("His last name is " + kid["lname"])

my_function(fname = "Tobias", lname = "Refsnes")

Les arguments arbitraires Kword sont souvent raccourcis en **kwargs dans


les documentations Python.

Valeur du paramètre par défaut


L'exemple suivant montre comment utiliser une valeur de paramètre par
défaut.

Si nous appelons la fonction sans argument, elle utilise la valeur par défaut :

Exemple
def my_function(country = "Norway"):
print("I am from " + country)

my_function("Sweden")
my_function("India")
my_function()
my_function("Brazil")

Passer une liste comme argument


Vous pouvez envoyer n'importe quel type de données d'argument à une
fonction (chaîne, nombre, liste, dictionnaire, etc.), et il sera traité comme le
même type de données à l'intérieur de la fonction.

37
Par exemple, si vous envoyez une liste en argument, ce sera toujours une
liste lorsqu'elle atteindra la fonction :

Exemple
def my_function(food):
for x in food:
print(x)

fruits = ["apple", "banana", "cherry"]

my_function(fruits)

Valeurs de retour
Pour laisser une fonction renvoyer une valeur, utilisez l' return instruction :

Exemple
def my_function(x):
return 5 * x

print(my_function(3))
print(my_function(5))
print(my_function(9))

La déclaration de réussite
functionles définitions ne peuvent pas être vides, mais si, pour une raison
quelconque, vous avez une functiondéfinition sans contenu, insérez
l' passinstruction pour éviter d'obtenir une erreur.

Exemple
def myfunction():
pass

Arguments de position uniquement

38
Vous pouvez spécifier qu'une fonction peut avoir UNIQUEMENT des arguments
de position ou UNIQUEMENT des arguments de mot-clé.

Pour spécifier qu'une fonction ne peut avoir que des arguments de position,
ajoutez , / après les arguments :

Exemple
def my_function(x, /):
print(x)

my_function(3)

Sans cela, , /vous êtes réellement autorisé à utiliser des arguments de mots-
clés même si la fonction attend des arguments de position :

Exemple
def my_function(x):
print(x)

my_function(x = 3)

Mais lors de l'ajout du, , /vous obtiendrez une erreur si vous essayez
d'envoyer un argument de mot-clé :

Exemple
def my_function(x, /):
print(x)

my_function(x = 3)

Arguments de mots clés uniquement


Pour spécifier qu'une fonction ne peut avoir que des arguments de mots-clés,
ajoutez *, avant les arguments :

Exemple
def my_function(*, x):
print(x)

my_function(x = 3)

Sans cela, *, vous êtes autorisé à utiliser des arguments positionnels même
si la fonction attend des arguments de mots-clés :

39
Exemple
def my_function(x):
print(x)

my_function(3)

Mais lors de l'ajout du, *, /vous obtiendrez une erreur si vous essayez
d'envoyer un argument de position :

Exemple
def my_function(*, x):
print(x)

my_function(3)

Combinez le positionnement
uniquement et le mot clé
uniquement
Vous pouvez combiner les deux types d'arguments dans la même fonction.

Tous les arguments précédant le / ,sont uniquement de position et tous les


arguments après le *, sont uniquement des mots-clés.

Exemple
def my_function(a, b, /, *, c, d):
print(a + b + c + d)

my_function(5, 6, c = 7, d = 8)

Récursivité
Python accepte également la récursivité des fonctions, ce qui signifie qu'une
fonction définie peut s'appeler elle-même.

La récursivité est un concept mathématique et de programmation courant.


Cela signifie qu'une fonction s'appelle elle-même. Cela a l’avantage de
signifier que vous pouvez parcourir les données pour atteindre un résultat.

40
Le développeur doit être très prudent avec la récursion car il peut être assez
facile d'écrire une fonction qui ne se termine jamais, ou qui utilise des
quantités excessives de mémoire ou de puissance du processeur. Cependant,
lorsqu'elle est écrite correctement, la récursion peut constituer une approche
de programmation très efficace et mathématiquement élégante.

Dans cet exemple, tri_recursion() est une fonction que nous avons
définie pour s'appeler ("recurse"). Nous utilisons la variable k comme
données, qui décrémente ( -1 ) à chaque fois que nous récurons. La récursion
se termine lorsque la condition n'est pas supérieure à 0 (c'est-à-dire
lorsqu'elle est 0).

Pour un nouveau développeur, comprendre exactement comment cela


fonctionne peut prendre un certain temps. La meilleure façon de le savoir est
de le tester et de le modifier.

Exemple
Exemple de récursion

def tri_recursion(k):
if(k > 0):
result = k + tri_recursion(k - 1)
print(result)
else:
result = 0
return result

print("\n\nRecursion Example Results")


tri_recursion(6)

12- Classes et objets Python

Classes/objets Python
Python est un langage de programmation orienté objet.

Presque tout en Python est un objet, avec ses propriétés et ses méthodes.

Une classe est comme un constructeur d'objets ou un « plan » pour créer des
objets.

41
Créer une classe
Pour créer une classe, utilisez le mot-clé class:

Exemple
Créez une classe nommée MyClass, avec une propriété nommée x :

class MyClass:
x = 5

Créer un objet
Nous pouvons maintenant utiliser la classe nommée MyClass pour créer des
objets :

Exemple
Créez un objet nommé p1 et imprimez la valeur de x :

p1 = MyClass()
print(p1.x)

La fonction __init__()
Les exemples ci-dessus sont des classes et des objets dans leur forme la plus
simple et ne sont pas vraiment utiles dans les applications réelles.

Pour comprendre la signification des classes, nous devons comprendre la


fonction intégrée __init__().

Toutes les classes ont une fonction appelée __init__(), qui est toujours
exécutée lors du lancement de la classe.

Utilisez la fonction __init__() pour attribuer des valeurs aux propriétés de


l'objet ou à d'autres opérations nécessaires à effectuer lors de la création de
l'objet :

Exemple
Créez une classe nommée Person, utilisez la fonction __init__() pour attribuer
des valeurs pour le nom et l'âge :

42
class Person:
def __init__(self, name, age):
self.name = name
self.age = age

p1 = Person("John", 36)

print(p1.name)
print(p1.age)
Remarque : La __init__()fonction est appelée automatiquement chaque fois
que la classe est utilisée pour créer un nouvel objet.

PUBLICITÉ

La fonction __str__()
La fonction __str__() contrôle ce qui doit être renvoyé lorsque l'objet de classe
est représenté sous forme de chaîne.

Si la fonction __str__() n'est pas définie, la représentation sous forme de


chaîne de l'objet est renvoyée :

Exemple
La représentation sous forme de chaîne d'un objet SANS la fonction __str__() :

class Person:
def __init__(self, name, age):
self.name = name
self.age = age

p1 = Person("John", 36)

print(p1)

Exemple
La représentation sous forme de chaîne d'un objet AVEC la fonction __str__() :

class Person:
def __init__(self, name, age):
self.name = name
self.age = age

def __str__(self):

43
return f"{self.name}({self.age})"

p1 = Person("John", 36)

print(p1)

Méthodes d'objet
Les objets peuvent également contenir des méthodes. Les méthodes dans les
objets sont des fonctions qui appartiennent à l'objet.

Créons une méthode dans la classe Person :

Exemple
Insérez une fonction qui imprime un message d'accueil et exécutez-la sur
l'objet p1 :

class Person:
def __init__(self, name, age):
self.name = name
self.age = age

def myfunc(self):
print("Hello my name is " + self.name)

p1 = Person("John", 36)
p1.myfunc()
Remarque : Le selfparamètre est une référence à l'instance actuelle de la
classe et est utilisé pour accéder aux variables appartenant à la classe.

Le paramètre soi
Le selfparamètre est une référence à l'instance actuelle de la classe et est
utilisé pour accéder aux variables appartenant à la classe.

Il n'est pas nécessaire qu'il soit nommé self, vous pouvez l'appeler comme
vous le souhaitez, mais il doit être le premier paramètre de n'importe quelle
fonction de la classe :

Exemple
Utilisez les mots mysillyobject et abc au lieu de self :

44
class Person:
def __init__(mysillyobject, name, age):
mysillyobject.name = name
mysillyobject.age = age

def myfunc(abc):
print("Hello my name is " + abc.name)

p1 = Person("John", 36)
p1.myfunc()

Modifier les propriétés de l'objet


Vous pouvez modifier les propriétés des objets comme ceci :

Exemple
Fixez l'âge de p1 à 40 :

p1.age = 40

Supprimer les propriétés de l'objet


Vous pouvez supprimer des propriétés sur des objets en utilisant le delmot-
clé :

Exemple
Supprimez la propriété age de l'objet p1 :

del p1.age

Supprimer des objets


Vous pouvez supprimer des objets en utilisant le delmot-clé :

Exemple
Supprimez l'objet p1 :

del p1

La déclaration de réussite
45
classles définitions ne peuvent pas être vides, mais si, pour une raison
quelconque, vous avez une classdéfinition sans contenu, insérez
l' passinstruction pour éviter d'obtenir une erreur.

Exemple
class Person:
pass

Testez-vous avec des exercice

46

Vous aimerez peut-être aussi