OFFICE DE LA FORMATION PROFESSIONNELLE & DE LA PROMOTION DU TRAVAIL
INSTITUT SUPERIEUR DES TECHNOLOGIES DE L’INFORMATION ET DE LA COMMUNICATION DE MARRAKECH
MANIPULER LES DONNÉES
LES FICHIERS EN PYTHON
Exercice 1:
Soit la classe Stagiaire. Chaque stagiaire a un code, un nom , un prénom et une moyenne.
1. Créer la classe Stagiaire avec les accesseurs et les modifieurs. Ajouter la méthode __str__
2. Ajouter à la classe une méthode SaveToFile qui permet d’enregistrer la description d’un stagiaire
dans un fichier (son nom est donné comme paramètre de la méthode).
3. Créer un objet s1 de la classe stagiaire, puis enregistrer le dans un fichier ‘[Link]’.
4. Créer une fonction qui permet d’afficher le contenu d’un fichier (le nom du fichier est passé
comme paramètre de la fonction) .
5. Afficher le contenu du fichier ‘[Link]’.
6. supposons qu’un fichier ‘[Link]’ est rempli comme suit :
code :h15230,nom:alaoui,prenom:aya,Moyenne :15.7
code :h14563,nom:benbrahim,prenom:karim,Moyenne :10.17
code :h85230,nom:idali,prenom:khalid,Moyenne :17.02
code :h86070,nom:alami,prenom:hiba,Moyenne :11.45
a. On veut lire les informations du fichier et créer une liste des stagiaires à partir des
informations obtenues.
b. Puis, on enregistre tous les stagiaires ayant une moyenne < 10 dans un fichier
‘[Link]’ et ceux ayant une moyenne >10 dans un fichier ‘[Link]’.
c. Afficher le contenu des deux fichiers pour s’assurer de la validité des données.
Exercice 2:
Soit un fichier typé intitulé [Link] qui comporte les enregistrements relatifs aux candidats d’un
concours. Chaque enregistrement est composé de : NCIN, NOM, PRENOM, AGE, DECISION : (type
contenant les identificateurs suivants : admis, refusé, ajourné), et séparé par point virgule (;).
Travail demandé :
1. Définir la fonction saisir() qui permet de remplir les données relatives aux candidats dans le fichier
[Link]
2. Définir la fonction admis() qui permet créer le fichier [Link] comportant les données relatives aux
candidat admis
Page : 1 ANNEE DE FORMATION 2023/2024 [Link]
OFFICE DE LA FORMATION PROFESSIONNELLE & DE LA PROMOTION DU TRAVAIL
INSTITUT SUPERIEUR DES TECHNOLOGIES DE L’INFORMATION ET DE LA COMMUNICATION DE MARRAKECH
3. Afin de sélectionner en priorité les candidats admis et âgés moins de 30 ans, créer la fonction
attente() qui produira à partir du fichier [Link], un nouveau fichier intitulé [Link] comportant les
données relatives aux candidats admis et âgés plus que 30 ans.
Une ligne du fichier [Link] comprend le NCIN, le NOM et PRENOM d’un candidat séparés par point
virgule (;).
4. Définir la fonction statistiques(dec) qui permet de retourner le pourcentage des candidats pour la
décision dec (admis, refusé et ajourné). Exemple :Le pourcentage des candidats admis = (Nombre des
candidats admis / Nombre des candidats) *100
5. Définir la fonction supprimer() qui supprimera du fichier [Link] les candidat âgés plus que 30
N.B : On suppose que les fichiers seront mis à la racine du lecteur C.
Exercice 3 : Classe Robot Basique
Implémentez une classe Robot qui représente un robot simple. Ce robot devrait avoir les attributs suivants:
● position_x et position_y pour représenter sa position dans un plan cartésien.
● orientation pour représenter sa direction (nord, sud, est, ouest).
La classe devrait avoir les méthodes suivantes :
● avancer(distance): déplace le robot vers l'avant de la distance spécifiée.
● tourner(direction): tourne le robot vers la gauche ou la droite.
● enregistrer_donnees_csv(FileName):sauvegarder ses données dans un fichier CSV
● enregistrer_donnees_JSON(FileName):sauvegarder ses données dans un fichier JSON
Dans le programme principale, vous devrez ajouter des fonctionnalités pour permettre au robot de
sauvegarder ses données dans un fichier CSV et JSON après chaque déplacement. Puis afficher les
informations stockée dans les fichiers.
Page : 2 ANNEE DE FORMATION 2023/2024 [Link]