0% ont trouvé ce document utile (0 vote)
229 vues123 pages

Formation Python Complète

Transféré par

nejikouka59
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 PPTX, PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
229 vues123 pages

Formation Python Complète

Transféré par

nejikouka59
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 PPTX, PDF, TXT ou lisez en ligne sur Scribd
Vous êtes sur la page 1/ 123

PYTHON

Formatrice: Zaineb Rejab

@: [email protected]
W: www.itgate-training.com 1
OBJECTIFS
• Dans ce cours, vous apprendrez tous les aspects fondamentaux de
la programmation informatique nécessaires. À la fin du cours, vous
pourrez utiliser ces outils pour importer des données en Python,
effectuer une analyse sur ces données et exporter les résultats
sous forme de graphiques, de fichiers texte ou de tout autre
élément dont vous pourriez avoir besoin. En apprenant comment
obtenir l'ordinateur pour faire votre travail pour vous, vous serez
en mesure de faire plus de science plus rapidement.
OBJECTIFS
• Écrire des programmes informatiques simples en Python
• Automatiser l'analyse des données
• Appliquer ces outils pour répondre à des questions
• Apprendre et comprendre les concepts de programmation qui
aideront à utiliser d'autres languages.
RESPONSABILITÉS DE
L'ÉTUDIANT
• Les étudiants doivent lire / visionner le matériel assigné avant la
classe pour laquelle ils sont programmés, assister aux cours,
participer en classe, remplir les devoirs et demander de l'aide
tôt s'ils ont des problèmes.
Introduction au python
Langage de programmation développé en 1989 par Guido van Rossum
 Orienté Objet :
Python est orienté-objet. Il supporte l'héritage multiple et la surcharge des opérateurs.
 Facile à apprendre :
La syntaxe de Python est très simple et, combinée à de nombreux types de données évolués (comme les listes, dictionnaires,
tuples...), ce qui conduit à des programmes à la fois très compacts et très lisibles.
 Langage Script :
Python fait partie des langages script interprétés contrairement au C/C++ qui sont des langages compilés. Ce qui lui permet d’être
plus rapide au développement, de comporter moins de ligne .
 Portable :
Python est portable entre les différentes variantes de Unix ainsi que sur les OS propriétaires comme Mac OS, BEOs, MS-DOS et les
différentes versions de Windows
 Open source :
Python est placé sous Général Public License
 Extensible :
Au-delà de la multitude de librairies et de modules déjà existants, il est possible d’en développer pour ses propres besoins
 Modulable :
Python permet de séparer les programmes en modules qui peuvent être réutilisés dans d'autres programmes en Python

5
langages interprétés et langages compilés
On peut distinguer deux grands types de langages : les langages interprétés et les langages compilés.
Pour les langages supportés sur le site on a :
langages compilés : C, C++, Pascal langages interprétés : Java (+ JavaScool)
et Python..

Dans les langages compilés : , le code source (celui que vous


écrivez) est tout d'abord compilé, par un logiciel qu'on Dans les langages interprétés , le code source (celui
appelle compilateur, en un code binaire qu'un humain ne peut que vous écrivez) est interprété, par un logiciel
pas lire mais qui est très facile à lire pour un ordinateur. C'est qu'on appelle interpréteur. Celui-ci va utiliser le
alors directement le système d'exploitation qui va utiliser le code code source et les données d'entrée pour calculer
binaire et les données d'entrée pour calculer les données de les données de sortie.
sortie.
6
Domaines d'application

 Programmation système  Multimédia  Domaine scientifique

 Développement Web  Bureautique  Traitement d'image

7
PYTHON

Python est un langage de


programmation facile à
apprendre.Vous pouvez l'utiliser pour
créer des applications web, des jeux,
même un moteur de recherche!

Pour installer python : rendez-vous sur le site officiel en suivant ce lien


https://www.python.org/ftp/python/3.7.0/python-3.7.0-amd64.exe
La fonction Print()

1. print ("Welcome to
la fonction print() permet Python!")
d’afficher une chaîne de
caractères (le fameux ( "Hello
world!"). En fait, elle affiche
Exécuter
l’argument qu’on lui passe entre
parenthèses et un retour à
ligne. Welcome to Python!
1. # Écrivez votre code ci-dessous!
VARIABLES
2. my_var = 10
3. print (" la valeur de mon variable =",
La création d'applications Web, de jeux et de my_var )
moteurs de recherche implique de stocker et
de travailler avec différents types de données.
Ils le font en utilisant des variables. Exécuter
• Une variable stocke une donnée et lui
donne un nom spécifique. Par exemple:

spam = 5 la valeur de mon variable = 10


• La variable spam stocke maintenant le
nombre 5.

Exercice :
Définissez la variable my_variable égale
à la valeur
10. puis imprimer ce variable.
Les principaux types de données

 type complexe en Python:


Un nombre complexe a deux parties, une partie
réelle et une partie imaginaire. Les nombres
complexes sont représentés par A+Bi ou A+Bj , où
A est la partie réelle et B la partie imaginaire.
Python prend en charge le type de données
complexe en tant que fonctionnalité intégrée, ce
qui signifie que nous pouvons effectuer
directement différentes opérations sur un
nombre complexe en python.

11
VARIABLES
1. # Écrivez votre code ci-dessous!

Les variables peuvent être de l'un des types 2. my_variable = 10


suivants: 3. Print ( " la valeur de mon variable",
my_variable)
• Numérique
• Chaine de caractère
(Alphanumérique)
Exécuter
• Booléen
• Les variables numériques sont
susceptibles de recevoir des nombres. # Définissez les variables aux
Il existe également plusieurs types valeurs
numériques tels que:
listées dans les instructions!
my_int = 7
my_float = 1.23
print (" la valeur de mon variable",
my_float )
1. my_int = 7
VO U S AVEZ ÉTÉ AFFECTÉ !
2. my_int = 3
3. print( " la valeur de my_int",
my_int )
Maintenant, vous savez comment utiliser les
variables pour stocker des valeurs. Dites
my_int = 7.Vous pouvez changer la valeur
d'une variable en la "réaffectant", comme ceci:

Exécuter
my_int = 3

la valeur de my_int = 3
L'INSTRUCTION D ’ 1. # Écrivez votre code ci-dessous!
A FFEC TAT IO N 2. A = 10
3. B = A + 3
L'instruction d’affectation permet d'attribuer 4. A = 3
une valeur (non définitive) a une variable
déclarée. 5. Print (" A = ", A)
L’affectation s’effectue en utilisant le 6. print (" B = ", B)
symbole ( = ).
spam = 5 Exécuter
ping = 9
• O n peur affecter a une variable le contenu
A=3
d'une autre variable B = 13
spam = ping
• O n peur incrémenter la valeur d'une
même variable sans utiliser une
deuxième variable
spam = spam +
1
1. # Écrivez votre code ci-dessous!
L'INSTRUCTION D ’ 2. A = 5
A FFEC TAT IO N 3. B = A + 4
L'instruction d’affectation permet d'attribuer 4. A = A + 1
une valeur (non définitive) a une variable 5. B = A - 4
déclarée.
L’affectation s’effectue en utilisant le 6. C = A – B
symbole ( = ). 7. Print (" A = ", A)

spam = 5
8. print (" B = ", B)
ping = 9 9. print (" C = ", C)

• O n peur affecter a une variable le


Exécuter
contenu
d'une autre variable
spam = ping A=6
• O n peur incrémenter la valeur d'une B=2
même variable sans utiliser une
deuxième variable C=4
spam = spam +
1
1. # Écrivez votre code ci-dessous!
L'INSTRUCTION D ’ 2. A = 5
A FFEC TAT IO N
3. B = 6
4. C = A
Exercice :
5. A = B
écrire un algorithme permettant d'echanger les
valeurs de deux variables A et B, et ce quel 6. B = C
que soit leur contenu préalable. 7. Print (" A = ", A)
8. Print( " B = ", B)
9. Print( " C = ", C)

Exécuter

A=6
B=5
C=5
1. # Définissez les variables aux
BO O L É E N S valeurs listées dans les
instructions!
Les nombres sont un type de données que nous 2. my_int = 7
utilisons dans la programmation. Un deuxième type 3. my_float = 1.23
de données s'appelle un booléen.
4. my_bool = True
Un booléen est comme un interrupteur d'éclairage. Il ne 5. Print( " la valeur de mon
peut avoir que deux valeurs.Tout comme un interrupteur variable",
ne peut être activé ou désactivé, un booléen ne peut être my_bool)
que Vrai (True) ou Faux (False.).

• Vous pouvez utiliser des variables pour stocker des Exécuter


booléens comme ceci:
a = True b = False
Exercice : Définissez les variables suivantes sur les valeurs
correspondantes: la valeur de mon variable =
• my_int à la valeur 7
• my_float à la valeur 1.23
True
• my_bool à la valeur True
C O M M E N TA I R E S

Les commentaires rendent votre programme plus


facile à comprendre. Lorsque vous regardez
votre code ou que d'autres veulent collaborer # Écrivez votre commentaire ici
avec vous, ils peuvent lire vos commentaires et # Écrivez un autre
facilement comprendre ce que fait votre code.
• Le signe # est pour les commentaires. Un
commentaire est une ligne de texte que " " " Siégeant de ta tasse jusqu'à ce
Python n'essaiera pas d'exécuter en tant que que ça coule,
code. C'est juste pour les humains à lire.
Saint Graal.
• Vous pouvez écrire un commentaire multi- """
ligne, en commençant chaque ligne avec #,
cela peut être une douleur.

• Au lieu de cela, pour les commentaires sur


plusieurs lignes, vous pouvez inclure le bloc
entier dans un ensemble de guillemets (" " "
)
LES MATHS

1. count = 10000 + 50000


Vous pouvez ajouter, soustraire, multiplier, 2. print (count )
diviser des nombres comme celui-ci

addition = 72 + 23 Exécut
e
subtraction = 108 - 204
multiplication = 108 * 0.5
division = 108 / 9 60000

Exercice : D éfinissez la variable count égale à la


somme de deux grands nombres.
LES MATHS: Exercice :
E X P O N E N T I AT I O N Créez une nouvelle variable appelée eggs
et utilisez des exposants pour définir eggs
égal à 100.
Tout ce calcul peut être fait sur une
calculatrice, alors pourquoi utiliser Python?
 Parce que vous pouvez combiner les
mathématiques avec d'autres types de 1. eggs = 10**2
données (par exemple, des booléens) et
2. print ( eggs )
des commandes pour créer des
programmes utiles. Les calculatrices se
contentent de chiffres. Exécute
Maintenant, travaillons avec les
exposants.
eight = 2** 3 100
LES M AT H S:
M O D U LO
1. spam= 7 % 4
2. print ( spam )
Notre opérateur final est modulo. Modulo
renvoie le reste d'une division. Donc, si
vous tapez 3 % 2, cela retournera 1, car 2
va en 3 une fois, avec 1 restant.
Exécut
un = 3 % 2 e

3
Exercice
:
Utilisez modulo pour définir un variable
spam égal à 3.
SYNTHÈSE DE MATHS :
1. # Écrivez votre code ci-dessous!
2. A = 5 # Variable A Jusqu'à présent, vous avez appris
3.B = A + 4 # Affectation ‘=‘ 4. A = A + sur:
1 • Variables, qui stockent des valeurs
5. my_int = 7 # Variable entier pour une utilisation ultérieure
6. my_float = 1.23 # Variable réel • Types de données, tels que les
7. my_bool = True # Variable Boolean (or nombres
False) et les booléens
8. count = 10000 + 50000 # addition • Commentaires, qui facilitent la
9. eggs = 10**2 # exponentiel lecture de votre code
10.spam= 7 % 4 # Modulo 11.Print(" A • Opérations arithmétiques, y
= ", A ) # Impression compris +, -,
*, /, ** et %
brian = "hello life! "

STRINGS 1. # Affectez vos variables ci-


dessous, chacune sur sa propre
Un autre type de données utile est la ligne!
chaîne de caractère. Une chaîne peut
2. César = "Graham"
contenir des lettres, des chiffres et des
symboles. 3. praline = "John"
name = "Ryan" 4. Viking = “Ragnar"
age = "19" 5. # afficher vos variables
food = "cheese"
6. Print ( César)
Les chaînes de caractères doivent
être entre guillemets. 7. Print ( praline )
Exercice :
8. print ( Viking )
• Créez une nouvelle variable et attribuez-
lui la chaîne "Hello life!". Exécut
• Définissez et imprimer les variables e
suivantes Graham
• Affecter César à "Graham" John Ragnar
• Affecter praline a "John"
• Affecter Viking a “Ragnar"
""“

STRINGS: AC C È S PAR La chaîne "PYTHON" a six caractères,


numérotés de 0 à 5, comme indiqué ci-dessous:
INDEX +---+---+---+---+---+---+
|P | Y| T| H|O|N|
Chaque caractère d'une chaîne est +---+---+---+---+---+---+ 0 1 2 3 4 5
attribué un numéro. Ce nombre est Donc, si vous vouliez "Y", vous pouviez
appelé l'indice. Consultez le diagramme simplement taper "PYTHON" [1] (toujours
dans l'éditeur. compter à partir de 0!)
"""
c = "cats"[0]
n = "Ryan"[3] fifth_letter = "MONTY"[4] print
Dans l'exemple ci-dessus, nous créons une fifth_letter
nouvelle variable appelée c et le mettre à «
c », le caractère à l'indice zéro de la
chaîne « chats ».
En Python, nous commençons à
compter l'indice de zéro au Exécut
e
lieu d'un.
Exercice :
Q uelle est le résultats de «print Y
fifth_letter »
FONCTIONS INTÉGRÉES

Une fonction (ou function) est une suite d'instructions regrouper et


définie
par un nom et que on peut l’appeler avec ce nom.

Les fonctions intégrées au langage sont les fonction prédéfini dans


un langage de programmation.

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.

Voyons comment nous pouvons changer les chaine de


caractères en utilisant ces méthodes.
1. # instruction print
M É T H O D E S DE STRINGS
2. count = 1000
3. Print(“ Imprimer dans le console
• La zone où nous avons écrit notre code “)
s'appelle
4. Print(count)
l'éditeur.
5. Print(“ Imprimer un variable “ ,
• La console (la fenêtre à droite de
count)
l'éditeur) est l'endroit où les résultats de
votre code sont affichés.
Exécuter
• print affiche simplement
votre code dans la console. Imprimer dans le console
1000
Imprimer un variable
1000
M É T H O D E S DE STRINGS Exercice :
• Les méthodes de String permettent créer une variable nommée parrot et la
d'effectuer des tâches spécifiques sur les définir sur la chaîne "Norwegian Blue et
chaînes. afficher le nombre de caractères dans
parrot.
• Nous allons nous concentrer sur 4
méthodes:
1. # La sortie sera le nombre de
• len() lettres
• lower() en "Norwegian Blue"!
• upper()
2. parrot = "Norwegian Blue"
• str()
3. print len (parrot)
Commençons par la plus simple len (…), qui
obtient la longueur (le nombre de caractères) Exécute
d'une chaîne!

14
M ÉT H O D ES D E ST R IN G S:
LO W ER ()& U PPER () parrot = "Norwegian Blue"

Vous pouvez utiliser la méthode lower ()


print(parrot.lower())
pour vous débarrasser de toutes les print("Norwegian Blue".lower() )
majuscules dans vos chaînes.Vous appelez
lower () comme ça: Print(parrot.upper() )
"Ryan".lower() Print("Norwegian Blue".upper() )
Ce qui retournera « ryan ». Exécute
Maintenant, votre r
chaîne est 100% minuscule!
norwegian blue
U pper() est une méthode similaire pour
faire une norwegian blue
chaîne complètement en majuscule. NORWEGIAN BLUE
"Ryan".upper() NORWEGIAN BLUE
Ce qui retournera « RYAN ».
M ÉT H O D ES D E ST R IN G S:
STR()

1. pi = str(3.14) +
Maintenant, regardons str (), ce qui est un 1
peu moins simple. La méthode str ()
transforme les non- chaînes en chaînes! Par 2. print(pi)
exemple:

Exécut
str(2) e

Ce qui fait de 2 un " 2 " . Traceback (most recent call last):


File "python", line 4, in
<module> TypeError: cannot
concatenate 'str'
C’est quoi la and 'int' objects
différence.???????
M ÉT H O D ES D E ST R IN G S:
les paramètres

age= 36
txt= ‘my name is john and i am {} ’
print ( txt.format(age) )
Cette fonction permet de
retourner un paramètre en Exécut
e
sortie en respectant le même my name is john and i am 36
format qui est déjà été
précisé en entrée.
1. # instruction print
Concaténation des String 2. count = 1000
3. Print(“ Imprimer dans le console
• Vous connaissez les chaînes de caractères “)
et vous connaissez les opérateurs 4. Print( count )
arithmétiques. Maintenant, combinons les 5. Print(“ Imprimer un variable “ ,
deux! count
Print("Life " + "of " + "Brian" ) Exécuter

• Cela va imprimer la phrase Life Imprimer dans le console


of Brian
1000
Imprimer un variable
1000
1. # Imprimez la concaténation de
"Spam and eggs" sur la ligne 3!
Concaténation des String
Print ( "Spam" + " and " + "eggs")
• Vous connaissez les chaînes de caractères
et vous connaissez les opérateurs
arithmétiques. Maintenant, combinons les
deux!

print ("Life " + "of " + "Brian") Exécuter

• Cela va imprimer la phrase Life of


Brian Spam and eggs
L'opérateur « + » entre les chaînes les
"ajoute" l'une après l'autre. Notez qu'il
y a des espaces à l'intérieur des
guillemets après la vie et de sorte que
nous pouvons faire ressembler la
chaîne combinée à 3 mots.
OPERATIONS SUR LES STRINGS

len (s) : renvoie la taille d’une chaîne,


s.replace() : replace une chaîne par une autre,
s.split() : découpe une chaîne,
s.isdigit() : renvoie True si la chaîne contient que des nombres, False sinon.
s.rstrip() : enlève les espaces de fin 33
IMPORTATIONS

Traceback (most recent call last): File


Python peut faire tout ce qui est sur une "python", line 2, in <module> NameError:
calculatrice, est plus? name 'sqrt' is not defined

• Avant d'essayer d’aller plus loin, voyons ce


que Python sait déjà des racines carrées.
Demandant à Python de faire la racine
Python a déclaré: NameError: le nom
carrée de 25.
'sqrt' n'est pas défini. Python ne sait
pas encore ce que sont les racines
Print sqrt(25) carrées.
IMPORTATIONS
Pour utiliser des fonctions de modules
dans un programme, il faut au début du
fichier importer ceux-ci.

len(“AAACGTR”)

Module
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 Module
autres sont regroupées dans des fichiers Import
séparés que l'on appelle des modules.
Les modules sont donc des fichiers qui
regroupent un ensembles de fonctions. Il
Mon Code
existe un grand nombre de modules pré-
programmés qui sont fournis d'office
avec Python.
IMPORTATIONS:
IMPORTATION G É N É R I Q U E Pour utiliser des fonctions de modules
Il existe un module Python dans un programme, il faut au début du
fichier importer ceux-ci.
nommé math qui inclut un
certain nombre de variables et
de fonctions utiles, et
Module
sqrt () est l'une de ces
fonctions. Pour accéder aux
mathématiques, tout ce dont
vous avez besoin est le mot-clé Module
Import
import. Lorsque vous importez
simplement un module de cette
façon, cela s'appelle une
importation générique. Mon Code

import math
print (math.sqrt(25))
IMPORTATIONS DE
FONCTIONS Pour utiliser des fonctions de modules
dans un programme, il faut au début du
Il est possible d'importer fichier importer ceux-ci.
uniquement certaines variables
ou fonctions d'un module donné.
Extraire une seule fonction d'un Module
module s'appelle importation
d’une fonction, et c'est
fait avec le mot-clé from: Module
Import

from math import sqrt


print sqrt (25)
Maintenant, vous pouvez Mon Code

simplement taper sqrt () pour


obtenir la racine carrée d'un
nombre - plus math.sqrt ()!
IMPORTATIONS
UNIVERSELLES Pour utiliser des fonctions de modules
dans un programme, il faut au début du
fichier importer ceux-ci.

Que faire si nous voulons toujours toutes


les variables et les fonctions dans un
module, mais ne veulent pas avoir à taper Module
constamment des maths ?

from math import * Module


Import
print(sqrt (25))

Mon Code
ALLER AVEC LE FLUX

Mon Code
Les programmes Python que nous avons
écrits jusqu'ici ont eu un esprit unique:
ils peuvent ajouter deux nombres ou imprimer
quelque chose, mais ils n'ont pas la possibilité
de choisir l'un de ces résultats par rapport à
l'autre. F_?
C

Le flux de contrôle
Nous donne cette possibilité de choisir parmi Résultat 2 Résultat 1
les résultats en fonction de ce qui se passe
d'autre dans le programme.
Comparer ! 1. 3 == 3
True
• Commençons par l'aspect le plus simple du 2. 3 == 6
flux de contrôle: les comparateurs.
Il y a six: False
Égal à (==)
1. 3 != 6
Different de (! =) True
Inférieur à (<) 2. 3 != 3
Inférieur ou égal à (<=) False

Supérieur à (>) 1. 3 < 6


Supérieur ou égal à (> =) True
Notez que == compare si deux 2. 6 < 3
choses sont égales, et = assigne une False
valeur à une variable.
Comparer ! 1. 3 <= 3
• Commençons par l'aspect le plus simple du True
flux de contrôle: les comparateurs. 2. 6 <= 3
• Il y a six:
False
Égal à (==)
1. 6 > 3
Different de (! =)
True
Inférieur à (<)
2. 3 > 6
Inférieur ou égal à (<=) False
Supérieur à (>)
1. 6 >= 6
Supérieur ou égal à (> =) True
Notez que == compare si deux 2. 3 >= 6
choses sont égales, et = assigne une
valeur à une variable. False
1. # Réglez ce paramètre sur
Comparer ! Vrai si 100 == (2 * 50) ou
False autrement.
• Exercice 2. ResBool = True
• Définissez chaque variable sur Vrai ou
Faux en fonction de ce que vous
pensez que le résultat sera. Par 1. Réglez ce paramètre sur Vrai
exemple, 1 <2 sera True, car 1 est si
inférieur à 2. -22> = -18 ou False si elle
est pas.
1. # C’est quoi le resultat de 2. ResBool = False
print ResBool
1. # Réglez ce paramètre sur
2. ResBool = (-22> = -18) Vrai si 17 <328 ou False si
3. print ResBool elle est pas.
>>> False 2. ResBool = True
Utiliser les Boolean

• Les opérateurs booléens comparent les instructions et


produisent des valeurs booléennes. Il y a trois opérateurs booléens:

and qui vérifie si les deux instructions sont vraies;

qui vérifie si au moins l'unedes


or déclarations est True;

ce qui donne le contraire de la


not déclaration.
Les Opérateurs Booléens
and

qui vérifie si les deux X Y X and Y


and instructions sont vraies;
True True True
• L'opérateur booléen and renvoie True
lorsque les expressions des deux côtés de
False True False
and sont vraies.

2 < 3 and 3 < 4 True True False False

2 > 3 and 3 < 4 False False False False


1. A = False and False
2. B = -(-(-(-2))) == -2 and 4 >=
Les Opérateurs Booléens
16**0.5
3. C = 19 % 4 != 300 / 10 / 10 and
qui vérifie si les deux False
and instructions sont vraies; 4. D=-(1**2) < 2**0 and 10 % 10
<= 20 -
• L'opérateur booléen and renvoie True 10*2
lorsque les expressions des deux côtés
de and sont vraies.
5. print A, B, C, D
Exécuter
2 < 3 and 3 < 4 True
1. A = False
2 > 3 and 3 < 4 False 2. B = False
3. C = False
4. D= True
Les Opérateurs Booléens
or
qui vérifie si au moins l'une
or des déclarations est True; X Y X or Y

True True True


• L'opérateur booléen or retourne True
lorsque au moins une expression de
False True True
chaque côté de ou est vraie. Par
exemple:
True False True
2 < 3 or 3 < 4 True
False False False
2 > 3 or 3 < 4 True

2 > 3 or 3 > 4 False


1. A = 2**3 == 108 % 100 or
Les Opérateurs Booléens ‘Rymond' ==
‘Redington’
qui vérifie si au moins l'une 2. B = True or False
or des déclarations est True;
3. C = 100**0.5 >= 50 or False
4. D = 1**100 == 100**1 or 3 * 2 *
• L'opérateur booléen or retourne True 1 != 3
lorsque au moins une expression de +2+1
chaque côté de ou est vraie. Par 5. print A, B, C, D
exemple: Exécuter

1. A = True
2 < 3 or 3 < 4 True 2. B = True
3. C = False
2 > 3 or 3 < 4 True
4. D= False

2 > 3 or 3 > 4 False


Les Opérateurs Booléens
not
ce qui donne le contraire
not de la déclaration.
X Not X

• L'opérateur booléen not renvoie True True False


pour les fausses instructions et False
pour les vraies instructions. Par False True
exemple:

not False True

not 2 > 3 True

not 3 < 4 False


1. A = not True
Les Opérateurs Booléens
2. B = not 3**4 < 4**3
ce qui donne le contraire 3. C = not 10 % 3 <= 10 % 2
not de la déclaration.
4. D = not 3**2 + 4**2 != 5**2
5. E = not not False
• L'opérateur booléen not renvoie True
6. print A,B,C,D,E
pour les fausses instructions et False
pour les vraies instructions. Par
exemple: Exécuter

1. A = False
not False True 2. B = True
3. C = True
not 2 > 3 True
4. D= True
5. E= False
not 3 < 4 False
C eci and cela
1. bool = True or not False and False
( o r ceci, no t ça!)
2. bool_one = False or not True and True
• Les opérateurs booléens ne sont pas 3. bool_two = False and not True or True
simplement évalués de gauche à droite.
4. bool_three = True and not (False or False)
Tout comme avec les opérateurs
arithmétiques, il existe un ordre des 5. bool_four = not not True or False and not
opérations pour les opérateurs True
booléens: 6. bool_five = False or not (True and True)
not évalué en premier;
Exécuter
and est évalué ensuite;

Or est évalué en dernier.


1. True
Les parenthèses () s'assurent que vos
expressions sont évaluées dans l'ordre
que vous voulez. Tout ce qui est entre
parenthèses est évalué comme sa
propre unité.
Utiliser les Boolean

1. bool= (2 <= 2) and "Alpha"


== "Bravo“
False
2. print bool

Exécuter
Syntaxe de l'instruction 1. reponse = "Y"
conditionnelle
2. answer = "Left"
The big IF 3. if answer == "Left“ :
4. print "This is the Verbal
• if est une instruction conditionnelle qui Abuse Room, you heap of parrot
exécute du code spécifié après avoir droppings!"
vérifié si son expression est True.
• Voici un exemple de syntaxe
d'instruction if: Exécuter

if 8 < 9:
print "Eight is less than nine!" 1. This is the Verbal Abuse Room,
you heap of parrot droppings!
Dans cet exemple, 8 <9 est l'expression
conditionnelle a contrôlée et l'impression
"Huit est inférieur à neuf!" est le code
spécifié.
L’INDENTATION

Remarque : Outre une meilleure lisibilité, les deux-points et


l’indentation sont formellement requis en Python. Même si on peut
indenter comme on veut (plusieurs espaces ou plusieurs tabulations,
mais pas une combinaison des deux), les développeurs recommandent
l’utilisation de quatre espaces. Faites en sorte de configurer votre
éditeur de texte favori de façon à écrire quatre espaces lorsque vous
tapez sur la touche Tab (tabulation).
Syntaxe de l'instruction 1. reponse = input (“Entrer un
conditionnelle numero!")
2. if reponse > 0 :
The big IF
3. print (“ton numero est positif")
Exercice 1:
Ecrire un algorithme qui demande un Exécuter
nombre a l'utilisateur, et l'informe ensuite si
ce nombre est positif ou negatif (le cas ou
le nombre est nul n'est pas traite).
1. Entrer un numero!
Enterer = input () 2. --

Enterer = input(“message dcommande ”)


Syntaxe de l'instruction 1. reponse = "Y"
conditionnelle
2. answer = "Left"
3. if answer == "Left " and reponse !=
The big IF
"y ":
print ( "This is the Verbal Abuse
• if l'expression Room, you heap of parrot
conditionnelle : droppings!")
• Code spécifié.
Exécuter
• l'expression conditionnelle :
• (2 <= 2) and "Alpha" ==
"Bravo “ 1. This is the Verbal Abuse Room,
• Var1 > Var2
• Bool1 == True
you heap of parrot droppings!
• Trouvé != False
Syntaxe de l'instruction  note = input ("Entrez votre
conditionnelle moyenne obtenu au bac ")
 if note >= 10 :
The big IF  print ("Vous êtes admis")

Exerice 2 :
Ecrire un programme demandant à
l'utilisateur de donner sa moyenne au
bac et affichant s'il est admis, Exécuter

1. Entrer qulques choses!


Syntaxe de l'instruction  if 8 > 9 :
conditionnelle  print ("I don't printed!")
 else:
The big IF / ELSE  Print( "I get printed! " )

L'instruction else complète l'instruction if.

Une paire if / else dit:


Si cette expression est vraie,exécutez ce bloc de
code en retrait , sinon ,exécutez ce code après
l'instruction else." Exécuter

Contrairement à si, sinon ne dépend 1. I get printed!


pas d'une expression.
note = input ("Entrez votre moyenne obtenu
Syntaxe de l'instruction au bac
conditionnelle ")
if note >= 12 and note <14 :
 print ("Mention AB")
 if note >= 14 and note<16 :
Exerice 2 :  print ("Mention B")
Ecrire un programme demandant  if note >=16 :
à l'utilisateur de donner sa  print ("Mention TB")
moyenne au bac et affichant s'il
est admis, ainsi que sa Exécuter
mention.
[12-14] mention AB
[14-16] mention B
[16 - >16 ] mention
TB
 note = input ("Entrez votre moyenne obtenu au
Syntaxe de l'instruction bac ")
conditionnelle  if note > 10 :
 print ("Vous êtes admis")
The big elif  Elif note < 10 :
 print ("Vous êtes Fichu ")
elifest l'abréviation de "else
if". Cel signifie  Elif note = 10 :
exactement ce queCela ressemble a "sinon, si  print ("Vous êtes sauver")
l'expression suivante est vraie, faites ceci!"
 Else :
if 8 > 9:  print (" y a un problème la ")
print "I don't get printed!"
elif 8 < 9: Exécuter
print "I get printed!" else:
print "I also don't get
printed!"

Dans l'exemple ci-dessus, l'instruction elif n'est


vérifiée que si l'instruction if d'origine est
False.
 note = input ("Entrez votre moyenne
Syntaxe de l'instruction
conditionnelle obtenu au
bac ")
 if note >= 10 :
 print ("Vous êtes admis")
Exerice 2 :  if note >= 12 and note <14 :
Ecrire un programme demandant
 print ("Mention AB")
à l'utilisateur de donner sa
moyenne au bac et affichant s'il  elif note >= 14 and note<16 :
est admis, ainsi que sa  print ("Mention B")
mention.  elif note >=16 :
 print ("Mention TB")
[12-14] mention AB
[14-16] mention B  else
[16 - >16 ] mention TB  print ("Vous n’êtes pas admis")
Résumé : Les structures de contrôle :
if,else,elif

 Condition simple  Alternative simple

 Condition imbriquée  Alternative multiple

61
TD

Exercice
 L'indice de masse corporelle d'une personne  poids = float(input("votre poids (kg) ? "))
peut être  taille = float(input("votre taille (m) ? "))
calculé avec la formule suivante :
imc = poids / (taille2)  imc = poids / (taille * taille)
Écrire un programme qui demande à l'utilisateur
les paramètres nécessaires, calcule l'indice de  #imc=poids/(taille **2)
masse corporelle et affiche le résultat
 Q uels sont les paramètres ? Quels sont leur  print ("indice de masse corporelle :",
type ? imc)
 Comment calculer taille2 ?
TD

• age =int(input("âge de la personne ?"))


Exercice :
 Demander l'âge de la personne • if age > 60:
Si l'âge est supérieur à 60, afficher «c'est une
• print "c'est une personne âgée"
personne âgée»
 Si l'âge est inférieur à 15, afficher «c'est un • elif age < 15:
enfant»
 Sinon, afficher «c'est un adulte» • print "c'est un enfant"
• else:
• print "c'est un adulte"
TD

●Exercice : • age = int(input("âge de la


personne ?"))
– Demander l'âge de la personne et afficher «la
personne a X an(s)», où X est la valeur entrée,
• if age > 1:
et en ne mettant un «s» à «ans» que si • print ("la personne a", age, "ans")
nécessaire
• else:
• print ("la personne a", age, "an")
TD

fumeur = input('est-ce que vous fumez ?')


age= int(input('quel est votre age ?'))
Exercice
if (fumeur== "oui") and (age > 60):
: print("le patient est une personne âgée
Écrire un programme qui demande à l'utilisateur si qui fume !")
c’est un fumeur ou non, puis Demander l'âge de la
personne if (fumeur == "oui") and ((age > 15)and
Si l'âge est supérieur à 60, afficher «le patient est (age < 60)):
une personne âgée qui fume»
 Si l'âge est inférieur à 15, afficher «c'est un enfant print("c'est un adulte fumeur!")
fumeur» if (fumeur == "oui") and (age < 15 ):
 Sinon, afficher «c'est un adulte fumeur »
 Sinon « le patient ne fume pas » print("c'est un enfant fumeur !")
if not(fumeur == "oui"):
print("le patient est non fumeur!")
zoo_animals = ["Tigre", "lion", "Singe" ];
Introduction aux listes
if len(zoo_animals) > 3:
print (" le 1ere animal dans le zoo: " +
• Les listes sont un type de données que
zoo_animals[0])
vous pouvez utiliser pour stocker une
collection de différentes informations en print (" le 2eme animal dans le zoo:"+
tant que séquence sous un même nom zoo_animals[1])
de variable. (Les types de données dont
print (" le 3eme animal dans le zoo: " +
vous avez déjà entendu parler incluent les
zoo_animals[2])
chaînes, les nombres et les booléens.)
print( " le 4eme animal dans le zoo: "
• Vous pouvez attribuer des éléments à +zoo_animals[3])
une liste avec une expression de la forme

list_name = [item_1, item_2] Exécuter


• On doit ajouter un élément dans
• avec les éléments entre la liste
parenthèses. Une liste peut sinon ce code n’affiche rien.
également être vide:
empty_list = [].
Listes: A ccès par index Exemple : Ecrire une déclaration qui imprime le
résultat de l'ajout des deuxième et quatrième
éléments de la liste. Assurez-vous d'accéder à
• Vous pouvez accéder à un élément individuel la liste par index!
de la
liste par son index. 1. numbers = [5, 6, 7, 8]
• Rappelle : Un index est comme une 2. Print(numbers [0] + numbers [2])
adresse qui identifie la place de l'élément 3. numbers [0] = 9
dans la liste.
4. Print(numbers [0])
• L’index s’écrit directement après le nom de la
liste entre parenthèses,comme présenté ci–des
sous : Exécuter

list_name[index]
12
9
Listes: Longueur de la liste

• Une liste n’a pas une longueur fixe.Vous pouvez ajouter des éléments à la fin d'une liste quand
vous le souhaitez!
1. letters = ['a', 'b', 'c’] 4
2. letters.append('d’) ['a', 'b', 'c', 'd']
3. print (len(letters))
4. Print( letters)

Exécuter
Listes: Découpage des
liste  chain = "123456789"
 print( chain[1:3] )

L'opérateur d'indiçage:  >>> 23

• L'opérateur d'indiçage ([]) permet


aussi de sélectionner des sous- • print( chain[1:len(chain)] )
chaines selon leurs indices. • >>> 23456789
• On appelle cette technique le slicing

découpage en tranches »).
Listes: Découpage des liste
Parfois, vous voulez seulement accéder à une 1. letters = ['a', 'b', 'c',
partie d'une liste. 'd', 'e’]
2. slice = letters[1:3]
• D'abord, nous créons une liste appelée 3. Print(slice)
lettres. 4. Print(letters)
• Ensuite, nous prenons une sous-section de
la liste et la stockons dans slice . Nous
faisons cela en définissant les indices que
nous voulons inclure après le nom de la Exécuter
liste: letters [1: 3].
• En Python, lorsque nous spécifions une
partie d'une liste de cette manière, nous
incluons l'élément avec le premier index,
1, mais nous excluons l'élément avec le ['b', 'c']
second index, 3. ['a', 'b', 'c',
• Ensuite, nous imprimons la découpe, qui 'd', 'e']
imprimera ['b', 'c']. Rappelez-vous, dans
Python, les indices commencent toujours
à 0, donc l'élément 1 est en fait b.
suitcase = ["sunglasses", "hat",
Listes: Découpage des liste "passport", "laptop", "suit",
"shoes"]
first = suitcase[0:2]
middle = suitcase[2:4]
• Exercice:
last = suitcase[4:6]
• A partir de la liste suivant créez : print(first)
• une liste appelée first contenant des print(middle)
deux premier éléments de valise. print(last)

• une liste appelée middle contenant Exécuter


uniquement
les deux éléments du milieu de valise.
1. first = ['sunglasses', 'hat']
• une liste appelée last composée des
2. middle = ['passport', 'laptop']
deux derniers éléments de valise.
3. last = ['suit', 'shoes']
ch = "Juliette"
Listes: Découpage des
liste et de Chaine de print(ch[:3]) # les 3 premiers caractères
caractères >>> Jul

• En fait, vous pouvez considérer les chaînes print(ch[3:]) # tout sauf les 3 premiers caractères
comme des listes de caractères: chaque >>> iette
caractère est un élément séquentiel dans
la liste, à partir de l'index 0.
print(ch[:-3]) # tout sauf les 3 dernierscaractères
• Vous pouvez trancher une chaîne >>> Julie
exactement comme une liste!
print(ch[-3:]) # les 3 dernies caractères
>>> tte
Listes: Découpage des
liste et de Chaine de  animals = "catdogfrog"
caractères
• # The first three characters of animals
• En fait, vous pouvez considérer les chaînes • cat = animals[:3]
comme des listes de caractères: chaque
caractère est un élément séquentiel dans
la liste, à partir de l'index 0. • # The fourth through sixth characters
• dog = [3:6]
• Vous pouvez trancher une chaîne
exactement comme une liste!
• # From the seventh character to the end
• frog = [-4:] ou [6:]
1. animals=["cat","bat"]
Listes: quelque 2. animals.insert(1, "dog")
opérations 3. Int = animals.index("bat")
4. Print (int)
Parfois, vous voulez seulement accéder à une
5. Print (animals.index("bat"))
partie d'une liste.
• Nous pouvons insérer des éléments dans
une liste.
Exécuter
animals.insert(1, "dog")

• Parfois, vous devez rechercher un élément 2


dans une 2
liste.

animals.index("bat")
Listes: Découpage des liste
Parfois, vous voulez seulement accéder à une
1. letters = ['a', 'b', 'c', 'd', 'e’]
partie d'une liste.
2. slice = letters[1:3]
• D'abord, nous créons une liste appelée 3. Print(slice)
lettres. 4. Print(letters)
• Ensuite, nous prenons une sous-section de
la liste et la stockons dans slice . Nous
faisons cela en définissant les indices que
nous voulons inclure après le nom de la Exécuter
liste: letters [1: 3].
• En Python, lorsque nous spécifions une
partie d'une liste de cette manière, nous
incluons l'élément avec le premier index,
1, mais nous excluons l'élément avec le ['b', 'c']
second index, 3. ['a', 'b', 'c', 'd', 'e']
• Ensuite, nous imprimons la découpe, qui
imprimera ['b', 'c']. Rappelez-vous, dans
Python, les indices commencent toujours
à 0, donc l'élément 1 est en fait b.
Listes: quelque
opérations
1. L1 = [5, 3, 1, 2, 4]
2. L2 = []

if "Y" in chromosomes: 1. L2=L1


print "C'est un garçon !" 2. L3=L1[:]
3. L1.remove(5)

• Attention, «=» ne copie pas les listes ! 4. print L1


5. print L2
6. print L3
List1 = List2

• Pour copier une liste :

[3, 1, 2, 4]
List3 = List1[:] [3, 1, 2, 4]
[5, 3, 1, 2, 4]
Listes: quelque opérations
N.B : Les éléments des
• Si votre liste est un désordre brouillé, vous aurez tableaux sont toujours indexés
peut être besoin de la trier. de 0 à n exclu auquel on peut
ajouter ou retirer des
animals = ["cat", "ant", "bat"] éléments.
animals.sort()

• D'abord, nous créons une liste appelée


animaux avec trois chaînes. Les chaînes ne
sont pas dans l'ordre alphabétique.
• Ensuite, nous trions les animaux dans l'ordre
alphabétique. Notez que .sort () modifie la liste
plutôt que de retourner une nouvelle liste.
• Pour supprimer un élément de la liste utiliser :

animals.remove("cat")
Listes: Les boucles « For »

L’instruction for est une instruction composée, c’est-à-dire une instruction dont
l’en-tête se termine par deux-points :, suivie d’un bloc indenté qui constitue
le corps de la boucle.
On dit que l’on réalise une itération de la boucle à chaque fois que le corps de la
boucle est exécuté.
Dans l’en-tête de la boucle, on précise après le mot-clé for le nom d’une variable
(i dans l’exemple ci-dessus) qui prendra successivement toutes les valeurs qui
sont données après le mot-clé in. On dit souvent que cette variable (i) est
un compteur car elle sert à numéroter les itérations de la boucle.,
Exemple :

for i in [0, 1, 2, 3]:


("i a pour valeur", i)
Listes: Pour un et tous

Si vous voulez faire quelque chose avec


1. for number in my_list:
chaque élément de la liste, vous pouvez
utiliser une boucle ‘for’ .
• Nous pouvons insérer des éléments dans
une liste.
for variable in
list_name: Solution
# Faire des choses!
• Pour le nom de variable qui suit le mot-clé
‘for’; il sera attribué la valeur de chaque 1. my_list = [1,9,3,8,5,7]
élément de la liste à son tour. 2. for number in my_list :
• Ensuite, dans list_name, le nom de la liste 1. Print(2 * number)
sur laquelle la boucle fonctionnera. La ligne
se termine par un deux-points (:) et le code
en retrait qui le suit sera exécuté une fois
par élément dans la liste.
Listes: Pour un et tous
1. for i in range(10) :
• Si vous voulez obtenir une liste de 1. print (i)
nombre utiliser la boucle range

range([debut], fin, [pas])

• Remarque Solution
bien :

print range(10)
0
> [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
1
Print(range(4, 10))
2
> [4, 5, 6, 7, 8, 9]
...
print (range(4, 10, 2))
> [4, 6, 8]
9
adn = "atcacgtta"
Listes: Pour un et tous
for i in range(len(adn)) :
print("la lettre n", i, "est", adn[i])

• Range peut être utilisé pour boucler


sur les indices, et non pas sur les
éléments d'une liste Solution

la base n° 0 est a
la base n° 1 est t
la base n° 2 est c
...
la base n° 8 est a
Boucle: Plus avec "For" start_list = [5, 3, 1, 2, 4]
square_list = []
for number in start_list:

• A Faire : square_list.append(number**2)
• Ecrivez une boucle for qui se répète sur square_list.sort()
une liste de nombre nommé start_list print (start_list)
puis print (square_list)
• Ajouter chaque nombre au carré (x ** 2)
à une liste nommé square_list. Exécuter
• Puis trier square_list!
• Imprimer les contenu de square_list.

[1, 2, 3, 4, 5]
[1, 4, 9, 16, 25]
Listes: Pour un et tous choices = ['pizza', 'pasta', 'salad', 'anchois']
print ('Your choices are:')
Un des points faibles de l'utilisation de ce index = 1
style d'itération est que vous ne for index, item in enumerate(choices):
connaissez pas L'index de la chose que print (index+1, item)
vous regardez.
En général, ce n'est pas un problème, mais il
est parfois utile de savoir dans quelle mesure
vous vous trouvez. Solution

enumerate fonctionne en fournissant un index


correspondant à chaque élément de la liste que Your choices are:
vous lui transmettez. Chaque fois que vous 1 pizza
parcourez la boucle, l'index sera supérieur, et 2 pasta
l'élément sera l'élément suivant de la
3 salad
séquence. C 'est très similaire à l'utilisation
d'une boucle normale avec une liste, sauf que 4 anchois
cela nous permet de compter facilement le
nombre d'éléments observés jusqu'à présent.
L’INDENTATION

Exemple :
 Si on oublie l’indentation, Python renvoie un message
d’erreur :
>>> for animal in animaux :
... print ( animal )
File " < stdin >" , line 2
print ( animal ) 5 ^ 6
 IndentationError : expected an indented block.
Listes: Pour un et tous

Exercice :
Ecrire un algorithme pour parcourir
une liste des nombres et qui
supprime les doublons en utilisant
les indices ou la fonction set ()

Ou encore :
N.B: set(list) est une méthode
utilisée pour convertir n'importe
lequel des éléments avec des
éléments distincts.
LISTES MULTIPLE

La méthode Python zip() prend iterable ou


conteneurs et renvoie un seul objet
itérateur, ayant des valeurs mappées de
tous les conteneurs. Il est utilisé pour
mapper l'index similaire de plusieurs
conteneurs afin qu'ils puissent être utilisés
avec une seule entité.
Syntaxe : zip(*itérateurs)

87
Résumé: Les Listes list_a = ['V', 9, 17, 15, 19]
list_b = ['A', 4, 8, 10, 30, 40, 50, 80, 90]
for a, b in zip(list_a, list_b):
# Add your code here!
print (a,b)
• Il est également courant de devoir
parcourir deux listes à la fois. C’est là que
la fonction zip intégrée est très utile.

• zip créera des paires d'éléments lorsque


deux listes seront passées et s'arrêtera à
1. VA
la fin de la liste la plus courte.
2. 94
3. 17 8
• zip peut gérer trois listes ou plus! 4. 15 10
5. 19 30
Résumé: Les Listes 1. list_a = ['V', 9, 17, 15, 19]
2. list_b = ['A', 4, 8, 10, 30, 40, 50, 80, 90]
3. list_c = ['C', 9, 17, 15, 19]

4. for a, b, c in zip(list_a, list_b, list_c):


• Il est également courant de devoir 5. # Add your code here!
parcourir deux listes à la fois. C’est là que

Print ( a,b,c)
la fonction zip intégrée est très utile.

• zip créera des paires d'éléments lorsque


deux listes seront passées et s'arrêtera à
1. VAC
la fin de la liste la plus courte.
2. 949
3. 17 8 17
• zip peut gérer trois listes ou plus! 4. 15 10 15
5. 19 30 19
LISTES MULTIPLE

Map en Python est une fonction qui


fonctionne comme un itérateur pour
renvoyer un résultat après avoir
appliqué une fonction à chaque
élément d'un itérable (tuple, listes,
etc.).
Il est utilisé lorsque vous souhaitez
appliquer une seule fonction de
transformation à tous les éléments
d’un tableau. 90
Boucle: Pendant que tu es là count = 0
if count < 5:
print ("Hello, je suis un if et count
• While = ", count)
while count < 5:
• La boucle while est similaire à une print ("Hello, count = ", count)
instruction if: elle exécute le code à count = count +1
l'intérieur si une condition est vraie.
• La différence est que la boucle while
continuera à exécuter tant que la
condition est vraie. Solution
• En d'autres termes, au lieu d'exécuter si
quelque chose est vrai, il s'exécute Hello, je suis un if et count = 0
pendant que cette chose est vraie. Hello, count = 0
Hello, count = 1
Hello, count = 2
Hello, count = 3
Hello, count = 4
Boucle: Pendant que tu es là
While loop_condition = True
• La condition est l'expression qui décide si la while loop_condition:
boucle va continuer à être exécutée ou non. print("Je suis une
• Le variable condition contient la valeur True boucle")
• La boucle while vérifie si la condition a la valeur loop_condition = False
True. C 'est le cas, donc la boucle est entrée.
• L'instruction d'impression est exécutée.
Solution
• Le variable condition est définie sur False.
• La boucle while vérifie à nouveau si
loop_condition a la valeur True. C e n'est pas le
cas, donc la boucle n'est pas exécutée une
seconde fois. Je suis une
• À l'intérieur d'une boucle while, vous pouvez boucle
faire tout ce que vous pourriez faire ailleurs, y
compris les opérations arithmétiques
Boucle: Pendant que tu es là
num = 1
While while num < 11 :
• A faire; print(num**2)
Créer une boucle while qui imprime num=num+1
tous les nombres de 1 à 10 au carré
(1, 4, 9, 16, ..., 100), chacun sur leur
propre ligne. Solution

1
4
9
16
25
.. 81
100
Boucle: Pendant que tu es là

While

• Une application courante d'une boucle choix = input('vous aimer le cours? (o/n)')
while consiste à vérifier l'entrée de while choix != 'o' and choix != 'n' :
l'utilisateur pour voir si elle est valide. choix = input("pardon j'ai pas compris
• Par exemple, si vous demandez à essayer encore: ")
l'utilisateur d'entrer o ou n et qu'ils
saisissent à la place 7, vous devez les
inviter à entrer une nouvelle fois.
Boucles Infinies

While

• Une boucle infinie est une boucle qui


ne sort jamais. C ela peut arriver
pour plusieurs raisons: while count > 0:
• La condition de boucle ne peut pas count += 1 # a la place de count -= 1
être fausse (par exemple pendant
que 1! = 2)
• La logique de la boucle empêche la
condition de boucle de devenir
fausse.
BREAK=SE BRISER.
While

• break est une instruction d'une ligne qui


signifie "quitter la boucle actuelle".
• Une autre façon de faire sortir notre
while count > 0:
boucle de comptage et arrêter count += 1 # a la place de count -= 1
l'exécution est avec l'instruction break
break.
chromosomes = []
Boucle: Pendant que tu es là while True:
n_chromosome = input("Entrez un n°
de chromosome : ")
• Exercice
chromosomes.append(n_chromosome)
Demander à l'utilisateur d'entrer une liste de
if n_chromosome == "":
numéros de chromosome, puis indiquer si
break
la personne ayant ces chromosomes est un
homme ou une femme. print(chromosomes)
if "Y" in chromosomes:
• Comment faire pour demander à print("C'est un homme.")
l'utilisateur d'entrer une liste ? else:
• Créer une liste vide print("C'est une femme.")
• L'utilisateur entre un premier
chromosome Solution
• Tant que la valeur entrée est valide,
on l'ajoute dans la liste et on
demande
Hobbies
• d'entrer un nouveau chromosome
C'est une femme
• Si la valeur entrée est vide, la liste
est
terminée et on passe à la suite
Objet : Mutable et non mutable

Type d’objet

Mutable Non mutable

 Liste  Int
 Dictionnaire  Float
 String
 Tuple

Un objet mutable est ainsi un objet qui peut être modifié, dont on peut changer les propriétés
une fois qu'il a été défini. Une erreur courante est de confondre modification et réassignation.
En Python, les objets de type bool , int , str , bytes , tuple sont non mutables( immutables)
98
Les tuples
 Tuple : tableau d’éléments indexés de 0 à n exclu auquel
on ne peut pas le modifier

99
Let’s play !!

from random import randint


• Exercice: random_number = randint(1, 10)
n_chance = 3
• Ecrire un programme qui permet de while n_chance > 0:
demander à l’utilisateur de saisir un guess = int(input("Your guess: "))
nombre aléatoire entre 1 et 10 , si ce if guess != random_number:
nombre correspond à celui qui a été print ("You Lose")
sélectionné par la machine donc un else:
affichage sera « You Win » Sinon « You print ("You win")
Lose ». break
• Le nombre de chance sera déclaré le n_chance -= 1
départ, où le programme s’arrete s’il a
atteint le nombre de chance déclaré ou
il a gagné le jeu.
Les structures de contrôle : continue

Tout code qui suit l'instruction continue


n'est pas exécuté. Contrairement à une
instruction break, une instruction continue
n'arrête pas complètement une boucle.
Vous pouvez utiliser une instruction
continue en Python pour ignorer une partie
d'une boucle lorsqu'une condition est
remplie. Ensuite, le reste d'une boucle
continuera à s'exécuter.

10
1
I N D E X O U CLÉ residents = {'nom' : 'Ahmed', 'age':
15, 'genre': 'homme'}
• Un dictionnaire est similaire à une liste,
mais vous accédez aux valeurs en
recherchant une clé au lieu d'un
1. L'accès aux valeurs de dictionnaire
index.
par clé est similaire à l'accès aux
• Une clé peut être n'importe quelle chaîne valeurs de liste par index:
ou numéro. Les dictionnaires sont
placés entre accolades, comme ceci:

print (residents['nom'])
d = {'key1' : 1, 'key2' : 2, 'key3' : 3} print(residents['age'])

On peut faire quoi avec les dictionnaire ?


I N D E X O U CLÉ 1. menu = {} # Dictionnaire vide

• Comme les listes, les dictionnaires sont 1. Ajoutez au moins trois autres paires clé-
modifiables. Un avantage de ceci est que valeur à la variable de menu :
nous pouvons ajouter de nouvelles 2. avec le nom de la plat (sous forme de
paires clé / valeur au dictionnaire après "chaîne") pour la clé et le prix (un
sa création comme suit: flottant ou un entier) comme valeur.

dict_name [new_key] = new_value


1. menu['Chicken Alfredo'] = 14.50
# Ajout d'une nouvelle paire clé-
• Une paire vide d'accolades { } est un valeur
1. Print(menu['Chicken Alfredo'])
dictionnaire vide, tout comme une paire
vide de [ ] est une liste vide. 2. Print( "There are " + str(len(menu))
+ " items on the menu.")
menu = {}
zoo_animals = { }
I N D E X O U CLÉ

• Parce que les dictionnaires sont


1. Ajoutez au moins trois autres paires clé-
mutable, ils
valeur à notre zoo
peuvent être modifiés de plusieurs façons. 2. Supprimez deux éléments en utilisant
1. Les éléments peuvent être del.
supprimés d'un dictionnaire 3. Réglez la valeur associée à la 3eme
avec la commande del: valeur a autre chose !.

del dict_name [key_name] zoo_animals = {"cheval":1, "oiseau":2,


"chat":3}
• Une nouvelle valeur peut être associée à del zoo_animals ["cheval"]
une clé en attribuant une valeur à la clé, del zoo_animals ["oiseau"]
comme ceci: zoo_animals["chat"]=5
print(zoo_animals )

dict_name [key] = new_value


I N D E X O U CLÉ

my_dict = {
• Dans l'exemple ci-dessus, nous
"fish": ["c", "a", "r", "p"],
avons créé un dictionnaire
contenant de nombreux types "cash": -4483,
de valeurs. "luck": "good" }
Print(my_dict["fish"][0])

 Un dictionnaire peur supporter des types de données


différentes .
I N D E X O U CLÉ Exercice:
1. Ajouter une clé à l'inventaire appelée
«poche»
• Dans l'exemple ci-dessus, nous avons créé
un dictionnaire contenant de nombreux
types de valeurs. 2. Définir la valeur de «poche» comme
une liste composée des chaînes
«coquillage», «étrange baie» et
«peluches»

inventaire = { 3. .sort () les éléments de la liste stockés


'or': 500, sous la
'pochette': ['silex', 'ficelle', • clé sac'
'pierre '],
'sac': ['xylo', 'dagger', 'bedroll', 4. Puis, retirez ('dagger') de la liste des
'pain'] éléments stockés sous la clé ‘sac'
}
5. Ajouter 50 au nombre stocké sous la
clé 'or'
C orre c ti o n d e l ’ exe rc i c e :

Ou encore : en utilisant la fonction pop() qui supprime et renvoie la


dernière valeur de la liste ou la valeur d'index donnée.
Paramètre: index ( facultatif ) - La valeur à l'index est est sorti et
supprimé.
Si l'index n'est pas donné, alors le dernier L'élément est sorti et
supprimé.
BOUCLEZ U N
D IC T IO N N A IR E d = {'a': 'apple', 'b': 'berry', 'c': 'cherry'}

• Vous vous demandez peut-être comment


une boucle sur un dictionnaire pourrait
1. Imprimez la clé, suivie d'un espace
fonctionner. Voulez-vous obtenir la clé ou suivi de la
la valeur? valeur associée à cette clé.
• La réponse courte est la suivante: vous
obtenez la clé que vous pouvez utiliser
pour obtenir la valeur.
d = {'a': 'apple', 'b': 'berry', 'c': 'cherry'}
d = {'x': 9, 'y': 10, 'z': 20} for key in d:
for key in d: print (key+" "+ d[key])
if d[key] == 10:
print("la clé trouvée est : ",key)
print ("on a trouvé un 10!")
Résumé: Les Dictionnaires

 Dictionnaire : tableau d’éléments indexés par des types immuables auquel on peut ajouter ou retirer des éléments .

Un dictionnaire (en Python, dict)


est une collection qui associe une
clé à une valeur.
Par défaut, les nombres, les
chaînes de caractères et les
valeurs booléennes peuvent
produire une valeur de hachage.
Ils peuvent donc être utilisés
comme clé dans un dictionnaire.

109
Les fonctions avec Python
Les fonctions : Fonctions de base
Dénition Retour de résultat
La fonction peut contenir une instruction de la forme :
def nom_fct (arg1,arg2,…,argn):
return expression.
<instruction> Cette instruction permet de fournir le résultat de la
return <valeur> fonction au programme appelant.

112
Les fonctions : Lambda
Définition
lambda argument1,... argumentN : expression utilisant les arguments
lambda est une fonction qui prend un nombre quelconque d'arguments (y compris des arguments
optionnels) et retourne la valeur d'une expression unique. Les fonctions lambda ne peuvent pas contenir de
commandes et elles ne peuvent contenir plus d'une expression.
 Exemple1

 Exemple3

 Exemple2
Les fonctions : Fonctions de base
*args et **kwargs rendent la fonction
flexible. *args transmet un nombre variable
d'arguments sans mot-clé et sur lequel les
opérations d'une liste peut être effectuée.
** kwargs transmet un nombre variable
d'arguments avec des mot-clés et sur
lequel les opérations d'un dictionnaire peut
être effectué.
 *kwargs
 *args

11
4
Quelques exercices avec
Python
@: [email protected]
W: www.itgate-training.com
115
Version 1.0
Exercices sur les conditions « if »
1- Imprimez "Oui" si a est égal à b, sinon imprimez "Non".
2- Cet exemple manque d'indentations pour être correct.
Insérez l'indentation manquante pour que le code soit correct:
if 5 > 2:
print("Five is greater than two!")

3- Utilisez la syntaxe abrégée correcte pour mettre la


déclaration suivante sur une ligne :

if 5 > 2:
print("Five is greater than two!")
Correction
Exercices sur les conditions «while »

• Imprimez i tant que i est inférieur à 6.


• Arrêtez la boucle si i est égal à 3.
• Dans la boucle, while i vaut 3, on passe
directement à l'itération suivante.
• Imprime un message lorsque la condition est
fausse.
Correction
Exercices sur les «fonctions »
1- Exécutez une fonction nommée ma_fonction.
2- À l'intérieur d'une fonction avec deux paramètres, imprimez le
premier paramètre.
3- Si vous ne connaissez pas le nombre d'arguments qui seront passés
dans votre fonction, il existe un préfixe que vous pouvez ajouter dans la
définition de la fonction, quel préfixe ?
4- Si vous ne connaissez pas le nombre d'arguments de mots-clés qui
seront passés dans votre fonction, il existe un préfixe que vous pouvez
ajouter dans la définition de la fonction, quel préfixe ?
Correction
Série d’exercices en Python
Correction des exercices

Vous aimerez peut-être aussi