Vous êtes sur la page 1sur 31

Cours PL 8 –P.O.

O
• Programmation modulaire
• POO
• Fichier
• Exception
Programmation modulaire
• La programmation modulaire réfère au processus de décomposer un long code
à des tâches plus simples et petites sous-tâches ou modules.
• Avantages:

– Simplicité: Plutôt que de se concentrer sur le problème dans son ensemble, un module se
concentre généralement sur une partie relativement petite du problème.

– Réutilisation: Les fonctionnalités définies dans un seul module peuvent être facilement
réutilisées par d'autres parties de l'application. Cela élimine le besoin de dupliquer le code .

– Maintenabilité: Si les modules sont écrits de manière à minimiser l'interdépendance, la


probabilité que les modifications d'un seul module aient un impact sur d'autres parties du
programme diminue.

• Les fonctions, modules et les packages en python sont les composantes de la


programmation modulaire.
Création d’un premier script:
fiche.py
# coding: utf-8
print("Hello world")

Fichier extension « .py »

Exécuter un script python:


python /chemin_vers_votre_script/fiche.py
Importer des fonctions d'autres fichiers

Dans le même dossier, créez deux fichiers func.py et fiche.py


Fichier 1

Fichier 2
__main__ Point d’entrée des scripts
• '__main__' est le nom du scope dans lequel le
code s'exécute en premier.

• Exécuter uniquement lorsque c’est un script.


Module et Package
• Un module est constitué d’un/des fichier(s)
regroupant plusieurs fonctions.

• Un package est constitué d’un ensemble de


modules.
Créer un package
• Le fichier __init__.py , cela indique
à python qu'il s'agit d'un package .
• Ce fichier peut être vide, seule sa
présence est importante.

Package
«utils »
Les modules de python
• Liste de quelques modules de base
• random : fonctions permettant de travailler avec des
valeurs aléatoires
• math : toutes les fonctions utiles pour les opérations
mathématiques (cosinus, sinus, exp, etc.)
• sys : fonctions systèmes
• time : fonctions permettant de travailler avec le temps
• calendar : fonctions de calendrier
POO
• Les classes sont créées par mot-clé class.
• Les attributs sont les variables qui appartiennent à la classe.
• Les attributs sont accessibles à l’aide de l’opérateur point (.).

•Un objet est


une instance
d'une classe
•On peut créer
autant d'objets
que l'on veut
avec une
classe
POO
• Une méthode est un groupe de code destiné à effectuer une tâche
particulière dans le code.
• Une fonction qui appartient à une classe s'appelle une méthode.
• Toutes les méthodes nécessitent le paramètre 'self’.
• Le mot clé 'def' est utilisé pour créer une nouvelle méthode.
POO
• Méthode _ _init_ _:
– La méthode __init__ est similaire aux constructeurs en C ++ et Java. Il est exécuté dès
qu'un objet d'une classe est instancié. Cette méthode est utile pour effectuer
l’initialisation que vous voulez faire avec votre objet.
POO

•Une variable de classe


est propre à la classe.

•Une variable d’instance


est propre à l’objet
POO
• Public : les membres publics d'une classe sont accessibles à tous. Ils sont
donc accessibles et modifiables depuis l'extérieur de la classe et aussi par
d'autres classes.
POO
• Protected: les membres d'une classe sont accessibles aux autres membres
de la classe et sont également disponibles pour leurs sous-classes. On
rajoute le préfixe : ‘_’
POO
• Private: Les membres privés d'une classe ne sont accessibles qu'au sein de
la classe. En Python, un membre privé peut être défini en utilisant un
préfixe ‘__’.
P.O.O
• Les propriétés :
Alors bien que cela ne soit pas obligatoire, il existe une convention de
passer par des getter (ou accesseur) et des setter (ou mutateur) pour
changer la valeur d'un attribut qui sont appelés des propriétés.
POO
• L'héritage est défini comme une manière par laquelle une classe
particulière hérite des fonctionnalités de sa classe de base. La classe de
base est également appelée «Superclasse» et la classe qui hérite de
la Superclasse est appelée «Sous-classe».
POO
Fichier
Les types d'ouverture

• Il existe plusieurs modes d'ouverture:


• r, pour une ouverture en lecture (READ).
• w, pour une ouverture en écriture (WRITE), à chaque ouverture le contenu
du fichier est écrasé. Si le fichier n'existe pas python le crée.
• b, pour une ouverture en mode binaire.
• t, pour une ouverture en mode texte.
• x, crée un nouveau fichier et l'ouvre pour écriture
Fichier
Editer un fichier
• Pour éditer un fichier en python on utilise la fonction open

Le paramètre est renseigné par un r , ce paramètre indique une ouverture de


fichier en lecture
Fermeture d'un fichier
• Comme tout élément ouvert, il faut le refermer une fois les instructions
terminées. Pour cela on utilise la méthode close() .

Lire le contenu d'un fichier


• Pour afficher tout le contenu d'un fichier, vous pouvez utiliser la méthode
read sur l'objet-fichier.
Fichier

Le mot clé with

• Il existe une autre syntaxe plus courte qui permet de


s‘émanciper du problème de fermeture du fichier: le
mot clé with
Les extensions des fichiers python
• Il existe plusieurs extensions de fichier qui
tournent autour de python:
• py -> script modifiable
• pyc -> script compilé
• pyw -> script exécuté sans lancement de
terminal (sous windows)
Exception

• Gérer les exceptions en utilisant le bloc try……except


• try : ce mot clé permet d'essayer une action et si l'action
échoue les instructions dans un bloc except sont exécutées.
Exception

Gérer l’exception
Exception
• Division par zéro

Gérer l’exception
Exception
• Cibler les erreurs
• Par exemple que se passe-t-il si nous divisons un nombre par des lettres?
Exception
• Introduire le mot clé ‘else’
Exception
• le mot clé finally pour exécuter des instructions quelque soit les erreurs
générées ou non (et même si il y a présence d'un return ). Dans tous les
cas les instructions placées dans finally seront exécutées.

Vous aimerez peut-être aussi