[Go to site: main page, start]

0% ont trouvé ce document utile (0 vote)
4 vues33 pages

Apprendre Python : Fonctions et Modularité

Transféré par

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

Apprendre Python : Fonctions et Modularité

Transféré par

bitolobatiar
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 PDF, TXT ou lisez en ligne sur Scribd

Apprendre le langage​

Python (partie 2)

Par Christ Ngakosso​


+242 06 822 38 02
Sommaire

(Partie 1)
Introduction à Python​

●​ Qu'est-ce que Python ?


●​ Pourquoi apprendre Python ?
●​ Installation et premiers pas
●​ Exécution d'un script Python

Les Variables et Opérateurs

●​ Définition et types de base


●​ Manipulation des types standards
●​ Opérateurs
●​ Variables avancées (listes, tuples, dictionnaires, ensembles)
●​ TD : Exercices sur les variables

Les Conditions​

●​ L'instruction if, elif, else


●​ Opérateurs relationnels et logiques
●​ TD : Exercices sur les conditions

Les Structures Itératives​

●​ La boucle for
●​ La boucle while
●​ Instructions de contrôle (break, continue, pass)
●​ TD : Exercices sur les boucles

1
(Partie 2)
Fonctions et modularité​

●​ Définition et appel de fonctions


●​ Paramètres et valeurs de retour
●​ Les fonctions lambda
●​ programmation modulaire
●​ TD : Exercices sur les fonctions

Gestion des Exceptions​

●​ Comprendre les erreurs en Python


●​ Gestion des erreurs avec try, except, finally
●​ TD : Exercices sur la gestion des exceptions

Gestion des Fichiers ​

●​ Ouvrir, Lire et Écrire dans un Fichier .txt


●​ Manipulation Avancée des Fichiers .txt
●​ Fichiers Structurés : JSON
●​ TD : Exercices sur les fichiers json et .txt

2
Chapitre 4: Fonctions et Modularité

A.​ Introduction aux fonctions


En Python, une fonction est un bloc de code réutilisable qui exécute une tâche précise.
L'utilisation de fonctions permet :

●​ D'éviter la répétition du code.​

●​ De rendre le programme plus structuré et lisible.​

●​ De faciliter la maintenance et l'évolution du programme.​

Python offre deux types de fonctions :

1.​ Les fonctions prédéfinies (ex: print(), len(), sum(), max()).​

2.​ Les fonctions définies par l'utilisateur, que nous allons explorer en détail.​

1. Définition et appel d'une fonction

1.1. Définir une fonction


En Python, on utilise le mot-clé def pour définir une fonction, suivi d'un nom et de parenthèses.

Syntaxe de base :

3
1.2. Appeler une fonction
Une fois définie, la fonction est exécutée lorsqu'on l'appelle.

Exemple :

2. Les paramètres et arguments


Une fonction peut recevoir des paramètres, qui sont des valeurs externes utilisées dans le bloc
d'instructions.

2.1. Fonction avec un paramètre

2.2. Fonction avec plusieurs paramètres

2.3. Valeurs par défaut des paramètres

4
Si aucun argument n’est fourni lors de l’appel de la fonction, Python utilise la valeur par défaut.

3. Retourner une valeur (return)


Une fonction peut renvoyer une valeur grâce au mot-clé return.

Une fonction s’arrête dès qu’elle atteint un return, tout ce qui est écrit après ne sera pas
exécuté.

4. Arguments avancés

4.1. Arguments variables (*args)


Permet de passer un nombre illimité de valeurs.

5
4.2. Arguments nommés (**kwargs)
Permet de passer des arguments sous forme de dictionnaire.

Résultat :

5. Les fonctions anonymes (lambda)


Une fonction lambda est une fonction courte et anonyme.

On peut aussi utiliser plusieurs arguments :

6
6. Portée des variables (local et global)

6.1. Variables locales


Une variable définie à l'intérieur d'une fonction est locale et inaccessible à l'extérieur.

6.2. Variables globales


Une variable définie en dehors d'une fonction est globale.

Si on veut modifier une variable globale dans une fonction, on utilise global :

7
7. Fonctions imbriquées
Une fonction peut être définie à l'intérieur d’une autre fonction.

8. Fonctions Récursives
Une fonction récursive s’appelle elle-même.

8.1 Exemple : Factorielle

8
8.2 Autre exemple : Suite de Fibonacci

9. Les décorateurs
Un décorateur est une fonction qui permet de modifier le comportement d'une fonction sans la
modifier directement.

[Link]: Exercices d'application


1. Fonction de bienvenue

9
●​ Écrire une fonction bienvenue(nom) qui affiche "Bienvenue, [nom] !".​

2. Calcul de la factorielle

●​ Écrire une fonction factorielle(n) qui retourne n!.​

3. Nombre pair ou impair

●​ Écrire une fonction pair_ou_impair(n) qui affiche si un nombre est pair ou impair.​

4. Somme d’une liste

●​ Écrire une fonction somme_liste(liste) qui retourne la somme des éléments d’une
liste.​

5. Conversion Celsius → Fahrenheit

●​ Écrire une fonction celsius_to_fahrenheit(celsius).


●​ formule : °C = (°F - 32) ÷ 1,8​

6. Trouver le maximum

●​ Écrire une fonction trouver_max(a, b, c).​

7. Compter les voyelles

●​ Écrire une fonction compter_voyelles(mot). ​

8. Vérifier un palindrome

●​ Écrire une fonction est_palindrome(mot).


●​ un palindrome est un mot qui se lit dans les deux comme KAYAK​

10
9. Table de multiplication

●​ Écrire une fonction table_multiplication(n).​

10. Fonction récursive

●​ Écrire une fonction compte_a_rebours(n) qui affiche les nombres de n à 0.

B. Introduction à la Modularité en Python


La modularité ou programmation modulaire en Python consiste à diviser un programme en
plusieurs fichiers appelés modules et packages pour faciliter la réutilisation, la maintenance et
l'organisation du code. Un module est un fichier contenant du code Python (fonctions, classes,
variables, etc.), et un package est un ensemble de modules organisés dans des répertoires.

Objectifs:

1.​ Comprendre ce qu’est un module et comment l’importer.​

2.​ Apprendre à organiser les modules dans des répertoires différents.​

3.​ Comprendre l'utilisation des packages et du fichier spécial __init__.py.​

4.​ Manipuler les chemins d'accès aux modules avec [Link].​

5.​ Découvrir les bonnes pratiques en modularité.​

11
1. Les Modules en Python
Un module est un simple fichier .py contenant du code réutilisable.

📌 Exemple de module ([Link]) :

Ce fichier [Link] peut être importé et utilisé dans un autre programme Python.

2. Importer un Module

2.1. Importer un module depuis le même répertoire

Si le fichier [Link] est dans le même dossier que le script principal ([Link]), on
peut l’importer directement :

📌 Exemple ([Link]) :

2.2. Importer une fonction spécifique d’un module

On peut importer uniquement une fonction pour éviter d’écrire module.nom_fonction :

12
2.3. Importer un module avec un alias

On peut raccourcir le nom du module avec as :

3. Organiser les Modules dans des Répertoires Différents

3.1. Structure des dossiers

Les modules peuvent être placés dans différents répertoires :

3.2. Importer un module depuis un sous-dossier

Si le module [Link] est dans le dossier modules/, on peut l'importer ainsi :

📌 modules/[Link] :

📌 [Link] :

13
⚠ Important : Le fichier __init__.py dans modules/ permet à Python de reconnaître ce
dossier comme un package.

4. Manipulation des Chemins d’Accès avec [Link]


Par défaut, Python cherche les modules dans des répertoires spécifiques. On peut afficher ces
chemins avec :

Si un module se trouve en dehors du dossier du script principal, on peut ajouter dynamiquement


son chemin :

📌 Exemple : Ajouter un module situé dans un autre dossier (libs/)

📌 Dans [Link] :

14
5. Packages en Python
Un package est un répertoire contenant plusieurs modules. Pour que Python reconnaisse un
dossier comme un package, il doit contenir un fichier spécial __init__.py.

📌 Exemple de structure d'un package calculs :

📌 Contenu de calculs/[Link] :

📌 Contenu de calculs/[Link] :

📌 Importer un module depuis un package ([Link]) :

15
📌 Utiliser __init__.py pour regrouper des imports (calculs/__init__.py) :

📌 Importer tout le package ([Link]) :

6. Exécution Conditionnelle avec if __name__ == "__main__"

Quand un fichier Python est exécuté directement, il prend le nom __main__. Cela permet
d’exécuter du code uniquement si le fichier est lancé directement.

🔹 Pourquoi utiliser if __name__ == "__main__": ?


1.​ Séparer l’exécution et l’importation​

○​ Permet d’avoir du code exécutable uniquement lorsque le fichier est lancé


directement.​

○​ Évite l’exécution de code non désiré lorsqu’on importe le fichier comme module.​

2.​ Améliorer la modularité​

○​ On peut réutiliser des fonctions ou classes sans exécuter tout le script.

16
📌 Exemple (module_test.py) :

7. Modules intégrés à Python (Standard Library)


Python possède une grande bibliothèque standard avec des modules prêts à l’emploi.

7.1. Quelques modules courants

7.2. Exemples d’utilisation des modules standards

8. Bonnes Pratiques pour la Modularité

17
✅ Diviser le code en fichiers logiques (éviter les fichiers trop longs).​
✅ Utiliser des noms de modules clairs ([Link] au lieu de [Link]).​
✅ Utiliser if __name__ == "__main__" pour éviter l'exécution accidentelle de code.​
✅ Limiter l’usage de from module import * pour éviter les conflits de noms.​
✅ Ajouter [Link]("chemin") pour importer des modules en dehors du
répertoire principal.

TD : Exercices d’application

1. Création d'un module

Crée un module [Link] contenant une fonction carre(n) qui retourne n², puis
importe-le dans un script principal.

2. Utilisation des modules standards

Utilise le module math pour afficher la valeur de π et calculer la racine carrée de 49.

3. Création d’un package

Crée un package geometrie contenant deux modules : [Link] et [Link].


Implémente des fonctions pour calculer l’aire de ces formes.

4. Utilisation de [Link]

Ajoute dynamiquement un dossier modules_externes/ à [Link] et importe un module


qui s’y trouve.

5. Création d'un module avec exécution conditionnelle

Crée un fichier [Link] qui affiche "Ce fichier est exécuté directement"
uniquement si le script est exécuté et non importé.

18
Chapitre 5: Gestion des Exceptions

1. Comprendre les erreurs en Python


En Python, une exception est une erreur détectée lors de l'exécution du programme. Lorsqu'une
erreur survient, Python interrompt l'exécution du programme et affiche un message d'erreur.

1.1 Types d'erreurs courantes

Voici quelques erreurs fréquentes :

1.2 Exemple d'erreurs courantes

19
2. Gestion des erreurs avec try, except, finally
Pour éviter que le programme ne plante en cas d'erreur, on utilise un mécanisme de gestion des
exceptions.

2.1 Structure de base

2.2 Exemple concret

20
3. Gestion de plusieurs exceptions
Il est possible de gérer plusieurs types d'exceptions en utilisant plusieurs except.

4. Lever une exception avec raise


Il est parfois nécessaire de forcer une exception avec raise.

TP : Exercices sur la Gestion des Exceptions

Exercice 1 : Gérer une entrée utilisateur

21
Écrivez un programme qui demande un nombre entier à l’utilisateur et affiche son carré. Gérer
les erreurs si l’utilisateur entre une valeur non valide.

Exercice 2 : Gestion avancée des erreurs

Créez un programme qui :

●​ Demande deux nombres à l'utilisateur.​

●​ Effectue une division.​

●​ Gère les erreurs de type (ValueError) et division par zéro (ZeroDivisionError).​

●​ Affiche un message de fin dans finally.​

Exercice 3 : Lever une exception

Implémentez une fonction qui prend un âge en paramètre et lève une exception si l’âge est
négatif.

Exercice 4 : Calculatrice simple avec gestion d'erreurs


Créez une fonction de calculatrice qui demande à l'utilisateur deux nombres et une opération (+,
-, *, /) à effectuer. La fonction doit gérer les erreurs suivantes :

●​ Si l'utilisateur entre un type de nombre incorrect (par exemple une chaîne de caractères
au lieu d'un entier).​

●​ Si l'utilisateur tente de diviser par zéro.​

●​ Si l'opération demandée n'est pas valide.

Exercice 5 : Trouver un élément dans une liste


Écrivez un programme qui demande à l'utilisateur de saisir un nombre. Ensuite, il cherchera ce
nombre dans une liste. Si l'élément est trouvé, le programme doit l'afficher ; sinon, il doit lever
une exception personnalisée ElementNonTrouveError.

22
Exercice 6 : Vérifier une adresse e-mail
Écrivez un programme qui demande une adresse e-mail et vérifie si elle est valide (une simple
validation, par exemple si elle contient un @). Si l'adresse n'est pas valide, une exception
ValueError doit être levée.

Exercice 7 : Calculer la racine carrée d’un nombre


Demandez à l'utilisateur de saisir un nombre et calculez sa racine carrée. Si l'utilisateur entre un
nombre négatif, une exception doit être levée (ValueError).

Exercice 8 : Conversion de monnaie avec gestion d'erreur


Créez un programme qui demande un montant en dollars et le convertit en euros, sachant que 1
dollar = 0.85 euro. Si l'utilisateur entre un montant non valide, une exception ValueError doit
être levée.

Exercice 9 : Diviser une liste en sous-listes


Écrivez une fonction qui divise une liste en sous-listes de taille spécifiée. Si la taille de sous-liste
demandée est inférieure ou égale à zéro, une exception ValueError doit être levée.

Exercice 10 : Lecture de fichier avec gestion des erreurs


Créez un programme qui lit un fichier texte et affiche son contenu. Si le fichier n'existe pas, une
exception FileNotFoundError doit être gérée.

23
Chapitre 6: Gestion des Fichiers
Python offre plusieurs fonctionnalités pour manipuler les fichiers. Voici un guide détaillé sur
l'ouverture, la lecture, l'écriture et les manipulations avancées des fichiers .txt.

1. Ouvrir, Lire et Écrire dans un Fichier .txt

1.1 Ouvrir un fichier

L'ouverture d'un fichier en Python se fait avec la fonction open(), qui prend en paramètre :

●​ Le nom du fichier (avec son chemin, si nécessaire).​

●​ Le mode d'ouverture (r, w, a, r+, etc.).

Modes d'ouverture disponibles :

1.2 Lire un fichier

Il existe plusieurs méthodes pour lire un fichier :

24
Autres méthodes de lecture :

1.3 Écrire dans un fichier

Pour écrire du texte dans un fichier :

25
2. Manipulation Avancée des Fichiers .txt

2.1 Vérifier si un fichier existe

Avant d’ouvrir un fichier, il est souvent utile de vérifier s’il existe :

2.2 Lire et écrire simultanément

On peut lire et écrire dans un fichier en même temps :

2.3 Copier un fichier

2.4 Renommer un fichier

26
2.5 Supprimer un fichier

3. Exercices Pratiques
1.​ Création et écriture : Crée un fichier [Link], écris dedans ton prénom et ton âge.​

2.​ Lecture et affichage : Lis et affiche le contenu du fichier [Link].​

3.​ Ajout de contenu : Ajoute une nouvelle ligne avec ta ville de résidence.​

4.​ Copie et renommage : Copie [Link] en [Link] et renomme-le en


[Link].​

5.​ Suppression : Supprime le fichier [Link].

Gestion des Fichiers JSON

Le format JSON (JavaScript Object Notation) est couramment utilisé pour stocker et échanger
des données. Python propose le module json pour manipuler facilement ce type de fichiers.

27
1. Introduction aux Fichiers JSON
Un fichier JSON contient des données structurées sous forme de paires clé-valeur (comme un
dictionnaire Python). Voici un exemple de fichier [Link] :

2. Lecture d’un Fichier JSON

2.1 Charger un JSON dans un dictionnaire Python

On utilise [Link]() pour convertir un fichier JSON en dictionnaire Python.

28
3. Écriture dans un Fichier JSON

3.1 Enregistrer un dictionnaire Python en JSON

On utilise [Link]() pour enregistrer un dictionnaire Python dans un fichier JSON.

Explication :

●​ indent=4 : Formate le JSON avec une indentation pour une meilleure lisibilité.​

●​ ensure_ascii=False : Permet d’afficher les caractères spéciaux (ex. accents)


correctement.

4. Ajout de Données dans un JSON


Pour ajouter des informations dans un fichier JSON existant :

29
5. Suppression de Données JSON
On peut supprimer une clé avec del :

30
7. Exercices Pratiques
1.​ Création d’un fichier JSON : Crée un fichier [Link] contenant une liste de
produits avec nom, prix et stock.​

2.​ Lecture et affichage : Affiche les produits en indiquant ceux en rupture de stock.​

3.​ Ajout d’un nouveau produit : Ajoute un produit dans [Link].​

4.​ Modification d’un prix : Augmente le prix d’un produit de 10%.​

5.​ Suppression d’un produit : Supprime un produit spécifique de la liste.

TD : Exercices sur les fichiers JSON et .txt


Voici quelques exercices pour pratiquer la manipulation des fichiers JSON et .txt.

Exercices Fichiers .txt

1.​ Créer un fichier [Link] et y écrire les noms et notes de 5 étudiants.​

2.​ Lire et afficher le contenu du fichier.​

3.​ Calculer la moyenne des notes et l'ajouter à la fin du fichier.​

4.​ Supprimer la ligne d’un étudiant spécifique.​

Exercices Fichiers JSON

1.​ Créer un fichier [Link] contenant une liste de produits avec nom, prix et
quantité.​

31
2.​ Afficher tous les produits du fichier.​

3.​ Ajouter un nouveau produit à la liste.​

4.​ Mettre à jour le prix d’un produit spécifique.​

5.​ Supprimer un produit de la liste.

32

Vous aimerez peut-être aussi