Vous êtes sur la page 1sur 64

COMPRENDRE LES BASES

DE LA PROGRAMMATION
EN PYTHON

LICENCE 1 - UPB

1
SOMMAIRE
Partie 1 - Je découvrez Python
1. Principale caractéristique de Python
2. Environnement matériel et logiciel

Partie 2 - Les bases du langage Python


3. Les calculs et les opération en Python
4. Les affectations
5. Les Entrée / Sortie standard
6. Les variables
7. Les types de base du langage Python
8. Les opérations et les méthodes sur les listes
9. Les méthodes sur les dictionnaires
10.Les méthodes sur les fichiers
11. Les structures conditionnelles
12.Les structures de boucle
13.Les fonctions
14.La gestion des exceptions
PARTIE 1:
Je découvre python
PRINCIPALE CARACTÉRISTIQUE DE PYTHON

CARACTERISTIQUES
 Python est un langage de programmation impérative, structurée, orientée objet, de haut
niveau.
 Python étant ainsi appelé en référence à la troupe de comiques britanniques Monty
Python, le nom IDLE pourrait être une référence à Eric Idle, un membre fondateur de la
troupe.
 Il présente les avantages suivants :
  Sa syntaxe est très simple et concise : "on code ce que l'on pense". Proche
du 'langage algorithmique'.
  Moderne. Très largement répandu dans l'industrie, l'enseignement et la
recherche, notamment pour ses applications scientifiques. Une large
communauté participe à son développement.
  Puissant, muni de nombreuses bibliothèques de fonctions. Dont de très
bonnes bibliothèques scientifiques.
  Pratique pour travailler sur des objets mathématiques. Assez proche du
langage mathématique.
  Multi paradigmes, supportant les principaux styles de programmation :
impératif, procédural, orienté objet...
  Multi plateformes : GNU/Linux, Mac OS X, Windows...
PRINCIPALE CARACTÉRISTIQUE DE PYTHON

  Libre et gratuit : logiciel Open Source (www.opensource.org) distribué sous


la licence PSF (Python Software Foundation) compatible avec la GPL (Gnu
Public Licence).
  Gratuit, disponible sur la plupart des plateformes (Windows, Mac, Linux, ...).
  Python est dynamiquement typé.
  Python est extensible : On peut l'interfacer avec d'autres langages (C, C++,
Delphi, Java…)
PRINCIPALE CARACTÉRISTIQUE DE PYTHON
HISTORIQUE
 1991 : Guido van Rossum travaille aux Pays-Bas sur le
projet AMOEBA, un système d’exploitation distribué. Il
conçoit Python à partir du langage ABC et publie la version
0.9.0 sur un forum Usenet
 1996 : sortie de Numerical Python. Ce langage a été baptisé
ainsi en hommage à la troupe de comiques les « Monty
Python ».
 2001 : naissance de la PSF (Python Software Fundation).
Les versions se succèdent. Un grand choix de modules est
disponible, des colloques annuels sont organisés, Python
est enseigné dans plusieurs universités et est utilisé en
entreprise.
 Fin 2008 : sorties simultanées de Python 2.6 et de Python
3.0
 Depuis 2013 : développement des branches 2 et 3 : v2.7.3
et v3.3.0
2. ENVIRONNEMENT MATÉRIEL ET LOGICIEL
Quelques implémentations

 CPython : Classic Python, codé en C, implémentation portable sur différents systèmes.


 Jython : ciblé pour la JVM (utilise le bytecode de JAVA)
 IronPython : Python.NET, écrit en C#, utilise le MSIL (MicroSoft Intermediate Language)
 Stackless Python: élimine l’utilisation de la pile du langage C
 Pypy : projet de recherche européen d’un interpréteur Python écrit en Python
 CPython : Classic Python, codé en C, portable sur différents systèmes
 Python3000 : Python 3, la nouvelle implémentation de Cpython
 Unladen Swallow est un nouveau projet de Google utilisant les techniques de compilation
JIT de Java. Ce projet multipliera par 5 la vitesse d'exécution de Python.
2. ENVIRONNEMENT MATÉRIEL ET LOGICIEL
Quelques implémentations
De nombreuses bibliothèques aident le développeur à travailler sur des projets particuliers.
Plusieurs bibliothèques peuvent ainsi être installées pour, par exemple :
 développer des interfaces graphiques en Python.
 écrire de petits programmes très simples, appelés scripts, chargés permettant d’effectuer
des tâches très précises sur l’ordinateur ;
 écrire des programmes complets, comme des jeux, des suites bureautiques, des logiciels
multimédias, des clients de messagerie…
 faire des projets très complexes, comme des progiciels (ensemble de plusieurs logiciels
pouvant fonctionner ensemble, principalement utilisés dans le monde professionnel).
 De nombreux modules couvrant des domaines très variés :
 numpy : algèbre linéaire, matrices, vecteurs, systèmes linéaires...
 scipy : probalilité/statistiques, FFT 1D, 2D..., filtrage numérique, images ;
 Matplotlib: tracé de courbes ;
 os : manipulation des répertoires et des fichiers
2. ENVIRONNEMENT MATÉRIEL ET LOGICIEL
INSTALLATION DE PYTHON

 Les éléments nécessaires sont :


 une version de Python comme cités ci-dessus. Notez que les anciennes versions en
2.x sont incompatibles avec les plus récentes en 3.x.
 un éditeur de texte.
 Cependant, on peut utiliser un environnement de développement intégré ou IDE
 (Integrated DeveLopment Environment):  Anjuta ;  Scientific PYthon Development
EnviRonment (abrégé en Spyder) : multiplateforme , libre, orienté scientifique.  Eric
Python IDE  Geany est un éditeur de texte léger utilisant GTK+ et Scintilla et incluant les
fonctions élémentaires d'un environnement de développement intégré  IDLE (Integrated
DeveLopment Environment) : éditeur et interpréteur Python  Komodo Edit  Ninja-IDE 
PIDA  PyCharm  Eclipse  PyScripter  Python Tools for Visual Studio 
PythonAnywhere  SourceLair : pour la programmation en ligne dans le cloud.  Stani's
Python Editor  Wing IDE
2. ENVIRONNEMENT MATÉRIEL ET LOGICIEL
INSTALLATION DE PYTHON (Linux)

 Python est pré-installé sur la plupart des distributions Linux. Cependant, il est possible
que vous n'ayez pas la dernière version en date.
 Pour le vérifier, tapez dans un terminal la commande python –V
 Cette commande renvoie la version de Python actuellement installée sur le système.
Il est très probable que ce soit une version 2.x, comme 2.6 ou 2.7, pour des raisons
de compatibilité.
 Pour installer Python 3.x dont la syntaxe est très proche de Python 2.x mais diffère, il
faut :
1) Cliquer sur download et télécharger la dernière version de Python.
2) Ouvrir un terminal, puis se rendre dans le dossier où se trouve l'archive :
Décompresser le fichier et l’installer.
2. ENVIRONNEMENT MATÉRIEL ET LOGICIEL
INSTALLATION DE PYTHON (Linux)
 ou il suffit d’installer les paquets Python en fonction des besoins avec les outils
disponibles:
- avec l’installeur graphique (logithèque, muon, synaptic...),
- ou avec la ligne de commande (adept, apt-get, yum...) de votre distribution.
- Paquets Python 2.7 (Ubuntu 12.04 Precise, Debian Wheezy...):
python2.7 python-numpy python-scipy python-matplotlib python-qt4
- Paquets Python 3.x (Ubuntu 14.04 Trusty, Debian Jessie...)
python3 python3-numpy python3-scipy python3-matplotlib python3-pyqt4

Si, par exemple, vous avez installé Python 3.4, vous pouvez y accéder grâce à la
commande :
2. ENVIRONNEMENT MATÉRIEL ET LOGICIEL
INSTALLATION DE PYTHON (Windows)

 La distribution de base proposée sur Python.org n’inclut pas les modules numpy, scipy,
etc.
 Pour l’installation, on peut utiliser un logiciel installateur, qui se charge d’installer les
nombreux modules utiles au calcul scientifique ainsi que les IDE les plus connus (IDLE,
Spyder...).
 Pour l’installation de modules sans installateur:
1) Aller sur http://www.python.org/download
2) Sélectionner la version de Python que vous souhaitez utiliser.
3) On vous propose un (ou plusieurs) lien(s) vers une version Windows : sélectionnez
celle qui conviendra à votre processeur. Si vous avez un doute, téléchargez une version «
x86 ».
4) Installer la version téléchargée.
5) Dans Démarrer > Tous les programmes. Python devrait apparaître dans cette liste
2. ENVIRONNEMENT MATÉRIEL ET LOGICIEL
INSTALLATION DE PYTHON (MAC OS)

 L’installation de Python sous MAC OS est similaire à celle


Linux. Se référer à l’installation en fonction de la version de
l’OS.
2. ENVIRONNEMENT MATÉRIEL ET LOGICIEL
Technique de production de Python

 Lorsqu’un programme source est fourni, Python commence par le compiler pour produire
un code intermédiaire (similaire à un langage machine) appelé bytecode, lequel sera
ensuite transmis à un interpréteur pour l'exécution finale.
 Pour l'ordinateur, le bytecode est très facile à interpréter en langage machine. Cette
interprétation sera donc beaucoup plus rapide que celle d'un code source.
2. ENVIRONNEMENT MATÉRIEL ET LOGICIEL
INSTALLATION DE PYTHON

Il existe deux modes d'exécution d'un programme python :


1. Depuis l'interpréteur

Il permet d'exécuter une et une seule instruction à la fois.( les


instructions sont effacées une fois la session expirée).

2. Depuis un IDE (Environnement Intégré de Développement)

Un IDE permet d'écrire et d'éxecuter un programme (ensemble


d'instructions) dans un fichier d'extension : .py, appelé aussi
script. Pour exécuter le script, taper dans un terminal : python3
nom_fichier.py.
2. ENVIRONNEMENT MATÉRIEL ET LOGICIEL
Technique de production de Python

 Cette méthode a des avantages:


 L’interpréteur permet de tester immédiatement n'importe quel petit morceau de
programme permettant ainsi de vérifier le bon fonctionnement de chaque composant
d'une application au fur et à mesure de sa construction.
 L'interprétation du bytecode compilé est très satisfaisante pour de très nombreux
programmes, y compris graphiques.
 Le bytecode est portable. Pour qu'un programme Python ou Java puisse s'exécuter
sur différentes machines, il suffit de disposer pour chacune d'elles d'un interpréteur
adapté.
2. ENVIRONNEMENT MATÉRIEL ET LOGICIEL
INSTALLATION D’UN IDE

TP: installation de PyCharm


 Pour notre cours sous installerons l’IDE PyCharm.
 Les instructions d’installation en fonction du type de
système d’exploitation sont disponibles à l’adresse:
https://www.jetbrains.com/pycharm/download/
PARTIE 2: LES BASES
INTRODUCTION

 Le langage Python est constitué :


 de mots clefs, qui correspondent à des instructions élémentaires (for, if...) ;
 de littéraux : valeurs constantes de types variés (25, 1.e4, ’abc’...) ;
 de types intrinsèques (int, float, list, str...) ;
 d’opérateurs (=, +, *, /, %...) ;
 de fonctions intrinsèques (Built-in Functions) qui complètent le langage.

 L’utilisateur peut créer :


 des classes : nouveaux types qui s’ajoutent aux types intrinsèques ;
 des objets : entiers, flottants, chaînes, fonctions, programmes, modules...,
instances de classes définies par l’utilisateur ;
 des expressions combinant identificateurs, opérateurs, fonctions..
1. CALCULS, OPERATIONS
OPÉRATEURS ARITHMÉTIQUES

Dans le tableau ci-après, sont présentés les symboles utilisés pour les opérations de base.

NB : Pour une version 2 de Python, la division de deux entiers se fera comme la division
entière.
1. CALCULS, OPERATIONS
Opérateurs de comparaison et opérateurs logiques

 Opérateurs de comparaison: soit a= 5 et b=8

 Opérateurs logiques
1. CALCULS, OPERATIONS
Opérateurs de comparaison et opérateurs logiques

 Opérateurs logiques

 Autres opérateurs
2. AFFECTATIONS
AFFECTATIONS SIMPLES

 Une affectation se fait en utilisant le signe =

 On remarque au passage que, dans l’interpréteur interactif, taper juste var a le même effet
que print(var). Ce n’est pas le cas dans l’éditeur où l’on a besoin de la fonction print pour
afficher un résultat.
2. AFFECTATIONS
AFFECTATIONS MULTIPLES

 Python permet les affectations multiples:

 Avec la notion de tuple ou de liste, Python permet aussi les affectations parallèles:
2. AFFECTATIONS
OPÉRATEURS AVEC AFFECTATION

 Les opérations d’affectation


3. ENTRÉE/SORTIE STANDARD
ENTRÉE STANDARD (CLAVIER)

Python dispose de deux instructions : input() et raw_input() pour pouvoir demander à


l’utilisateur de saisir une chaîne de caractères.
 La lecture du clavier (entrée standard) est aussi simple que l'écriture à l'écran.
 Toutefois, il faut savoir que python lit du clavier ligne par ligne. Il attend donc toujours un
retour de chariot ou un caractère de fin de fichier avant d'analyser le texte tapé.
 raw_input() : "raw" en anglais veut dire "cru". La chaîne de caractères saisie va donc être
conservée comme une chaîne de caractères.
 NB: Cette fonction utilisée par Python 2.7 a été renommée en input() par Python 3.x.

 input() : cette fonction effectue toujours une saisie en mode texte (la valeur retournée est
une chaîne, c’est-à-dire un type str) dont on peut ensuite changer le type (on dit aussi
transtyper ou caster) avec int, float, etc.
3. ENTRÉE/SORTIE STANDARD
SORTIE STANDARD (ÉCRAN)

La fonction principale est print() qui permet d’afficher surtout des chaînes de caractères
 Elle se charge d’afficher la représentation textuelle des informations qui lui sont données
en paramètre, en plaçant un blanc séparateur entre deux informations, et en faisant un
retour à la ligne à la fin de l’affichage (le séparateur et la fin de ligne peuvent être
modifiés)
 On peut effectuer un formatage des chaînes de caractères avec la méthode str.format
3. ENTRÉE/SORTIE STANDARD
SORTIE STANDARD (ÉCRAN)

Syntaxe:
print("chaîne de formatage contenant des {...}".format(objet1, objet2, ...))
4. NOTION DE VARIABLES
NOMS DE VARIABLES

Les noms les plus simples sont constitués de lettres, majuscules ou non, mais attention cela
définit une variable différente.
 Par exemple ces deux variables sont différentes

Par convention, on utilise uniquement des minuscules pour désigner les variables simples
(ainsi que les noms de fonctions);
 les majuscules sont réservées en principe pour d'autres sortes de variables, comme les
noms de classe, les constantes.
 Pour des raisons de lisibilité, il est également possible d'utiliser le tiret bas _ dans les
noms de variables. Par exemple, on préféra age_moyen à AgeMoyen.
4. NOTION DE VARIABLES
NOMS DE VARIABLES

 Le premier caractère ne peut pas être un chiffre.


 Il est, en théorie au moins, possible de faire commencer un nom de variable par un tiret
bas comme premier caractère;
 il est fortement déconseillé d'utiliser des noms de la forme __variable__ qui sont
réservés au langage.
 Il n'est pas possible d'utiliser d'autres caractères que les caractères alphanumériques et
le tiret bas. Notamment le tiret haut - est interprété comme l'opération de soustraction

Il existe en python certains mots spéciaux, qu'on appelle des mots-clés, ou keywords en
anglais, qui sont réservés et ne peuvent pas être utilisés comme un nom de variable.
 La liste complète des 33 mots-clés est
4. NOTION DE VARIABLES
NOMS DE VARIABLES

Il existe en python certains mots spéciaux, qu'on appelle des mots-clés, ou keywords en
anglais, qui sont réservés et ne peuvent pas être utilisés comme un nom de variable.
 La liste complète des 33 mots-clés est:
4. NOTION DE VARIABLES
NOMS DE VARIABLES

Mots clefs du langage


4. NOTION DE VARIABLES
NOMS DE VARIABLES

Mots clefs du langage


5. TYPES DE BASE
LES TYPES DE DONNÉES ENTIERS

 Le type int
 Le type int n’est limité en taille que par la mémoire de la machine alors que dans la
plupart des autres langages les entiers sont codés sur un nombre fixe de bits et ont un
domaine de définition limité.
 L’entier peut être écrit simplement en décimal (2015), en binaire (0b11111011111), en
octal (0o3737), en hexadécimal (0x7DF)
 Un entier écrit en base 10 (par exemple 2015) peut se représenter en binaire, octal et
hexadécimal en utilisant bin () pour la conversion binaire, oct() pour la conversion octal,
hex() pour la conversion hexadécimal
 La fonction int() convertit un nombre d’une base B (défaut : 10) en base 10
5. TYPES DE BASE
LES TYPES DE DONNÉES ENTIERS

 Le type bool
 En Python, les valeurs des variables booléennes sont notées False et True. Les
opérateurs sont notés respectivement not, and et or.
 Lorsque l'on saisit les conditions suivantes les valeurs retournées peuvent prendre 2
valeurs : True ou False. Elles sont de type booléen 'bool'
5. TYPES DE BASE
LES TYPES DE DONNÉES ENTIERS

 Le type bool
 Conversion en booléen : bool()
 La fonction de conversion bool() convertit une valeur de n'importe quel type en un
booléen, selon les règles suivantes :
 Un nombre 'int' ou 'float' est converti à True s'il est non nul, à False sinon.
 Une chaîne de caractères 'str' est convertie à True si elle est non vide, à False si
c'est la chaîne vide : ""
5. TYPES DE BASE
LES TYPES DE DONNÉES ENTIERS

 Le type float

Un float est noté avec un point décimal (pas avec une virgule) ou en
notation exponentielle avec un « e » symbolisant le « 10 puissance » suivi
des chiffres de l’exposant (exemple 14.023e32).
Ils supportent les mêmes opérations que les entiers. Ils ont une précision
finie limitée.
 On peut accéder à ces valeurs minimales et maximales pour les
flottants comme ceci
5. TYPES DE BASE
LES TYPES DE DONNÉES ENTIERS

 Le type complex

Les complexes sont écrits en notation cartésienne formée de deux


flottants. La partie imaginaire est suffixée par j. Par exemple:

Un module mathématique spécifique (cmath) leur est réservé.


5. TYPES DE BASE
CHAÎNES DE CARACTÈRES

 On utilise les guillemets ou les simples côtes pour former les chaines sur une seule ligne,
triple guillemet pour les chaines sur plusieurs lignes.
 Pour afficher une chaîne de caractères, il faut utiliser la fonction print.

 NB : Depuis la version 3 de Python, la commande print est considérée comme une


fonction dont il faut alors mettre les arguments entre parenthèses
 NB : la chaîne de caractères vide s’écrit "" ou ''
5. TYPES DE BASE
CHAÎNES DE CARACTÈRES

 Opérations:
 Longueur de la chaine avec len(var_chaine)
 Concaténation de chaines avec + (exemple : var_chaine1 + var_chaine2)
 Répétition d’une chaine avec * (exemple : var_chaine * 3)
 lower(), upper(), capitalize() et swapcase() sont des méthodes (fonctions membres)
retournent respectivement une chaîne en minuscule, en majuscule, en minuscule
commençant par une majuscule, ou en casse inversée (exemple : var_chaine.upper())
5. TYPES DE BASE
Exercices

• Exercice 1:   écrire un script qui demande à l'utilisateur d'entrer son


nom; ses prénoms et affiche ensuite : "bienvenu(e) Mr(Mlle) Nom
Prénom(s)".

• Exercice 2 : écrire un script qui demande à l'utilisateur d'entrer sa date


de naissance et calcule par la suite son âge.

• Exercice 3: afficher le type de chaque variable que vous utiliserez dans


les exercices précédants.

*print(): afficher une valeur; input() : demander à l'utilisateur d'entrer


une variable; les opérateurs courants: +;-;/ ;*
6. OPÉRATEURS ET MÉTHODES SUR LES
LISTES CRÉATION DE LISTE
 C’est une structure qui peut être très utile. Une liste peut contenir des données de types
différents.
 c'est un objet de type list qui permet de collecter des éléments : données de type
quelconque : int, float, str, bool, etc., ou d'autres listes..
 Une liste est créée à l'aide d'une affectation.
 Ses éléments sont entre crochets [.].
 Les éléments d'une liste s'obtiennent grâce à leur indice entre crochets.
 La numérotation des éléments de la liste commence à 0.
 La méthode liste.sort() On peut vouloir ordonner une liste de nombres dans l’ordre
croissant
 La méthode liste.append(.) permet d’ajouter un nombre fourni en argument à la liste,
dans le sens d’agrandir la liste d’un élément.
 La fonction len(liste) prend en argument une liste et retourne son nombre d‘éléments:
longueur de la liste fournie en argument.
6. OPÉRATEURS ET MÉTHODES SUR LES
LISTES CRÉATION DE LISTE
 la fonction sum(liste) prend en argument une liste et retourne, lorsque c'est possible, le
résultat de l'opération '+' sur ses éléments;
 La fonction type(liste) donne le type.
 L'indice -1 permet d'obtenir le dernier élément. C'est plus simple que liste[len(liste) - 1].
L'indice -2 l'avant-dernier, etc...
 Un indice qui n'est pas compris entre -len(liste) et len(liste)-1 produit une erreur
'IndexError’

 Les éléments d'une liste sont des valeurs de différents types, celles qu'on lui a affectées.
 Une liste de listes permet de constituer un tableau bi-dimensionnel, tri-dimensionel, etc.
 Les listes sont des objets modifiables (on dit aussi mutables) : on peut modifier leurs
éléments.
 On modifie un élément de la liste en lui affectant une nouvelle valeur (de n'importe
quel type, simple ou complexe).
6. OPÉRATEURS ET MÉTHODES SUR LES
LISTES CRÉATION DE LISTE
6. OPÉRATEURS ET MÉTHODES SUR LES
LISTES Création d’une liste avec la fonction range()
 La fonction range() permet d’obtenir des listes toutes faites.
 permet d’obtenir une classe représentant une séquence d’entiers.
 avec un argument entier n, range(n) retourne la liste des n premiers entiers
 Avec deux arguments entiers m,n, range(m,n) retourne la liste des max(0; n − m)
entiers consécutifs qui sont m <= n.
 Avec trois arguments entiers m, k, n, range(m, n, k) retourne la liste des entiers de
la forme m+k*p avec p entiers naturels qui sont compris entre m (inclus) et n
(exclus).
6. OPÉRATEURS ET MÉTHODES SUR LES
LISTES Méthodes sur les listes

Méthodes Descriptions

Append() Ajoute un element à la fin d'une liste

Clear() Supprime tout les elements d'une liste

Copy() Retourne une copie de la liste

Count() Retourne le nombre d'ocurrence d'un element dans une liste

Extend() Ajoute les elements d'une liste à la fin d'une autre liste

Pop() Supprime l'element à la position spécifiée

Index() Retourne l'index de la première occurrence  de la valeur spéciifiée 

Insert() Ajoute un element à la position spécifiée

Remove() Supprime l'item avec la valeur  spécifiée 

Reverse() Inverse l'ordre de la liste 

Sort() Trie une liste


6. OPÉRATEURS ET MÉTHODES SUR LES
LISTES

EXERCICE :

Ecrire un script qui demande à l'utilisateur d'entrer une série de 10 noms


d'animaux. Afficher à l'écran chaque élément de cette liste. Ensuite présentez
le menu suivant à l'utilisateur :
• "00: quitter le programme"

• "0: entrer un element à supprimer"

• "1: inverser la liste"

• "2: trier la liste"

• "3: supprimer la liste"


7. MÉTHODES SUR LES DICTIONNAIRES
Notion de base

• Un dictionnaire en python est une sorte de liste mais au lieu d'utiliser


des index , on utilise des clés alphanumériques.

• Pour initialiser un dictionnaire , on utile la syntaxe suivante:


•dico = {}
•dico = dict()
•dico = {'nom': 'Yao', 'prenom': 'Paul', 'age':20}

•On peut accéder à un élément du dictionnaire, en montionnant sa


clé; Ex: dico[nom] : "yao". 
7. MÉTHODES SUR LES DICTIONNAIRES
Méthodes sur les dictionnaires

Méthodes Descriptions

Clear() Supprime tous les elements d'un dictionnaire


Copy() Retourne une copie du dictionnaire 
Fromkeys() Retourne un nouveau dictionnaire avec les clés
spécifiées
Get() Retourne la valeur de la clé spécifiée
Keys() Retourne une liste contenant les clés du dictionnaires
Pop() Supprime l'element avec la clé specifiée
Popitem() Supprime la dernière paire clé-valeur insérée
Setdefault() Retourne la valeur  de la clé specifiée, si la clé n'existe
pas : ajoute la clé avec la valeur spécifiée.
Update() Mettre à jour le dictionnaire avec les paires clé-valeur
spécifiées. 
Values() Retourne une liste de toute les valeurs du dictionnaire
7. MÉTHODES SUR LES DICTIONNAIRES

EXERCICE

Ecrire un script qui demande à l'utilsateur de renseigner son identité :


Nom, prénoms, date et lieu de naissance; adresse... . Enregistrer toutes
ses informations dans un dictionnaire. Et appliquer chacune des
méthodes précédentes.
8. MÉTHODES SUR LES FICHIERS
Notion de base

• Python a plusieurs fonctions pour créer; lire; mettre à jour et supprimer


un fichier.
• La fonction clé pour travailler avec des fichier en python est open().
Cette fonction à deux paramètres : le nom du ficher et le mode:
• Il existe 4 modes:
•"r" : ouvre un fichier pour la lecture
•"a": ouvre un fichier pour la mise à jour
•"w": ouvre un fichier pour l'ecriture
•"x": crée un fichier
• Pour fermer un fichier on utilise la méthode : close()
• Pour supprimer un fichier utiliser la méthode remove(), du package : os
9. STRUCTURES CONDITIONNELLES
L’INSTRUCTION IF [ELSE]
 Test if [else] : Mot clé if qui signifie « si » en anglais. La syntaxe est:
La condition est évaluée en booléen.
 Si elle a valeur True, le premier bloc d'instruction est exécuté, le deuxième ne l'est pas,
puis l'exécution du programme se poursuit.
 Si elle a valeur False le deuxième bloc d'instruction est exécuté (le premier ne l'est pas),
puis l'exécution du programme se poursuit
NB: - L’instruction else est optionnelle. - Le signe deux points « : », qui termine la condition
est indispensable; Python affichera une erreur de syntaxe si il est omis.
9. STRUCTURES CONDITIONNELLES
L’INSTRUCTION IF [ELSE]
 Exemples
9. STRUCTURES CONDITIONNELLES
L’INSTRUCTION IF [ELSE]
9. STRUCTURES CONDITIONNELLES
L’INSTRUCTION IF [ELIF] [ELSE]
10. STRUCTURES DE BOUCLE
L’INSTRUCTION WHILE

L'instruction while permet de répéter une séquence d'instruction, en boucle,


tant qu'une condition est vérifiée.

Généralement, la condition s‘évalue en un booléen Exemple 1: Table de multiplication


10. STRUCTURES DE BOUCLE
L’INSTRUCTION FOR
10. STRUCTURES DE BOUCLE
L’INSTRUCTION FOR
10. STRUCTURES DE BOUCLE
L’INSTRUCTION FOR
Nous souhaiterions créer la liste des carrés des entiers compris entre 0 et 10.
Pour cela on utilisera la méthode list.append() appliquée aux objets de type liste
qui permet d'ajouter un élément en queue de liste
11. FONCTIONS
DÉFINITION ET SYNTAXE
Définition: Une fonction est un ensemble d’instructions regroupées sous un nom
et s’exécutant à la demande.

Syntaxe: La définition d’une fonction est composée :


 du mot clé def suivi de l’identificateur de la fonction, de parenthèses entourant
les paramètres de la fonction séparés par des virgules, et du caractère « deux
points » qui termine toujours une instruction composée ;
 d’une chaîne de documentation indentée comme le corps de la fonction ;
 du bloc d’instructions indenté par rapport à la ligne de définition, et qui
constitue le corps de la fonction.
 Le bloc d’instructions est obligatoire. S’il est vide, on emploie l’instruction
pass. La documentation (facultative) est fortement conseillée
11. FONCTIONS
PASSAGE DES ARGUMENTS
Passage par affectation : chaque argument de la définition de la fonction
correspond, dans l’ordre, à un paramètre de l’appel.
 La correspondance se fait par affectation des paramètres aux arguments
11. FONCTIONS
UN OU PLUSIEURS PARAMÈTRES, PAS DE RETOUR:
LES PROCÉDURES

Dans ce cas, la fonction, appelée procédure, renvoie implicitement la valeur


None
11. FONCTIONS
UN OU PLUSIEURS PARAMÈTRES, UN OU PLUSIEURS RETOURS

Une fonction vaut quelque chose, une procédure fait quelque chose.
12. GESTION DES EXCEPTIONS
Notion de base

• Gérer les exceptions dans un programme informatique consiste à tenir


compte des erreurs susceptibles de survenir, autrement dire adapter le
comportement du programme une fois que ces erreurs apparaissent.

• Pour le faire on utilise en python les syntaxes : 


• Try :  pour écrire un bloc de code susceptible de générer une erreur

• Execpt : pour écrire le bloc de code qui gère le comportement du programme un fois
l'erreur survenue.

• Finally: pour écrire un bloc de code à exécuter quelque soit les erreurs générées