Premier module
Énoncé
L'objectif de cet exercice est de se familiariser avec la notion de découpage d'un programme en modules.
Dans n'importe quel langage de programmation, l'intérêt de découper un programme en modules concerne la factorisation du code.
En effet, un module va regrouper un ensemble cohérent de fonctions ainsi que de déclarations qui seront ensuite utilisées à différents endroits.
En python, un module est simplement un fichier .py
.
Nous allons également utiliser cet exercice pour prendre de bonnes habitudes de programmation, à savoir commencer par écrire le code de test.
Le module à réaliser est saisie_utilisateur.py
et fournira les fonctions suivantes :
1 2 3 4 5 6 7 8 9 |
|
Créez le module saisie_utilisateur.py
et recopiez y le code ci-dessus.
Bien que ne faisant rien, votre module est d'ores et déjà "utilisable" car c'est un programme syntaxiquement correct.
En effet, le symbole ...
appelé Ellipsis
est valide en python.
Ce dernier n'a aucun effet lors de son exécution.
Il sert à indiquer au programmeur que le fichier qu'il regarde n'est pas un fichier python "normal".
Dans notre cas, ...
précédé du commentaire #TODO
indique les endroits du code où vous devez intervenir.
Le symbole pass
que vous connaissez peut être déjà est équivalent à ...
et peut également être utilisé pour les mêmes raisons.
Écrivez ensuite le programme principal test_saisie_utilisateur.py
qui testera votre module en faisant quelques appels aux deux fonctions.
Vous pouvez d'ores et déjà exécuter votre programme de test sachant que le module, bien que pas encore implémenté, est syntaxiquement correct.
Néanmoins, en fonction de ce que votre programme test_saisie_utilisateur.py
fait du résultat aux appels à demande_entier
et demande_chaine
vous allez peut-être rencontrer des erreurs.
Rappelez vous qu'une fonction qui n'a pas de return
renvoie toujours None
.
Implémentez ensuite votre module.
Testez votre implémentation en exécutant votre programme de test qui cette fois-ci doit avoir le comportement attendu.
Exécutez directement votre module comme programme principal, que se passe-t-il et pourquoi ?
Correction
Cliquez ici pour révéler la correction.
saisie_utilisateur.py
:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 |
|
test_saisie_utilisateur.py
:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
|