Theme8Les fichiers<br />2011-03-24<br />1<br />
Un fichier texte<br />fichierTeste.txt<br />tot@gmail.com<br />Ceci est une ligne dans mon_fichier<br />Encore Une autre l...
Différents types de fichiers<br />Fichiers texte: lisibles par les humains, à l’aide d’un éditeur de texte (word, wordPad,...
En Python: un type de données est associé aux fichiers<br />Opérations sur un fichier avec Python<br />Ouverture<br />Ferm...
Emplacements de fichiers (1/2)<br />Récupérer le dossier courant où pointe le programme (getcurrentworking directory)<br /...
Emplacements de fichiers (2/2)<br /> Exemple: créer le dossier ‘Fichiers Tp Python’ sur ‘c:/’<br />Tester le script suivan...
Ouverture d’un fichier<br />Associer un fichier dont on spécifie le nom à une variable<br />Trois modes d’ouverture<br />E...
Fermeture d’un fichier<br />Syntaxe:		f1.close()<br />Permet de rendre le fichier disponible pour d’autres traitements <br...
Lecture d’un fichier<br />Etape 1: Ouverture du fichier en mode lecture<br />f = open("monFichier_1", "r")<br />Etape 2: A...
Exemple: Ouverture d’un fichier<br />Créer  dans le dossier précédent un fichier avec un éditeur de texte tst.txt dont le ...
Écriture dans un fichier (1/2)<br />Etape 1: Ouverture du fichier en mode écriture (write)<br />f3 = open("nomPrenom", "w"...
Exemple: Ecriture dans un fichier<br />A l’aide d’un script Python, ouvrir le fichier tst.txt en mode écriture, saisir  le...
Écriture dans un fichier (2/2)<br />Etape 1: Ouverture du fichier en mode ajout (append)<br />f3 = open("nomPrenom", "a")<...
Exemple: Ecriture dans un fichier<br />A l’aide d’un script Python, ouvrir le fichier tst.txt en mode ajout, saisir  le co...
Noms de fichiers et de dossiers<br />Que se passe-t-il si le nom de fichier ou dossier entré en paramètre n’existe pas lor...
Traiter l’exception d’ouverture de fichier<br />Si nous désirons ouvrir un fichier dont le nom n’existe pas ou qui existe ...
Le module «Pickle»<br />Il permet la conservation des types :<br />import pickle<br />a, b = 5, 2.83<br />f = open("monFic...
Exercice 1<br />Ecrivez un script qui permette d’encoder un fichier texte dont les lignes contiendront chacune les informa...
Exercice 2<br />Considérons que vous avez a votre disposition un fichier texte contenant des phrases de différentes longue...
Exercice 3<br />A partir de deux fichiers préexistants A et B, construisez un fichier C qui contienne alternativement un é...
Prochain SlideShare
Chargement dans…5
×

Theme 8

909 vues

Publié le

0 commentaire
0 j’aime
Statistiques
Remarques
  • Soyez le premier à commenter

  • Soyez le premier à aimer ceci

Aucun téléchargement
Vues
Nombre de vues
909
Sur SlideShare
0
Issues des intégrations
0
Intégrations
2
Actions
Partages
0
Téléchargements
10
Commentaires
0
J’aime
0
Intégrations 0
Aucune incorporation

Aucune remarque pour cette diapositive

Theme 8

  1. 1. Theme8Les fichiers<br />2011-03-24<br />1<br />
  2. 2. Un fichier texte<br />fichierTeste.txt<br />tot@gmail.com<br />Ceci est une ligne dans mon_fichier<br />Encore Une autre ligne<br />1- Premier élément de liste<br />2- 2 eme élément de liste<br />3- des nombres: 1 2 3 4 5 6 7 8 9<br />1<br />Marqueur de fin de ligne<br />2<br />
  3. 3. Différents types de fichiers<br />Fichiers texte: lisibles par les humains, à l’aide d’un éditeur de texte (word, wordPad, Bloc notes,etc,)<br />Fichiers binaires: doivent être décodés par un logiciel spécifique <br />Exemple: images, son, vidéos, etc.<br />3<br />
  4. 4. En Python: un type de données est associé aux fichiers<br />Opérations sur un fichier avec Python<br />Ouverture<br />Fermeture<br />Lecture<br />Écriture<br />4<br />
  5. 5. Emplacements de fichiers (1/2)<br />Récupérer le dossier courant où pointe le programme (getcurrentworking directory)<br />import os<br />rep_cour= os.getcwd()<br />Pointer sur un autre dossier (change directory)<br />os.chdir("c:/test1")<br />5<br />
  6. 6. Emplacements de fichiers (2/2)<br /> Exemple: créer le dossier ‘Fichiers Tp Python’ sur ‘c:/’<br />Tester le script suivant<br />import os<br />printos.getcwd()<br />os.chdir("C:/Fichiers Tp Python")<br />printos.getcwd()<br />6<br />
  7. 7. Ouverture d’un fichier<br />Associer un fichier dont on spécifie le nom à une variable<br />Trois modes d’ouverture<br />En lecture: Lire le fichier dès son début, ligne par ligne<br />f1 = open(monFichier_1, "r") # en lecture (read)<br />En écriture: Écraser l’ancien contenu et écrire par dessus<br />f2 = open(monFichier_2, "w") # en écriture (write)<br />En ajout: Écrire à la suite de l’ancien contenu<br />f3 = open(monFichier_3, "a") # en ajout (append)<br />7<br />
  8. 8. Fermeture d’un fichier<br />Syntaxe: f1.close()<br />Permet de rendre le fichier disponible pour d’autres traitements <br />Exemple: après avoir lu un fichier, nous désirons écrire dedans et le relire à nouveau<br />8<br />
  9. 9. Lecture d’un fichier<br />Etape 1: Ouverture du fichier en mode lecture<br />f = open("monFichier_1", "r")<br />Etape 2: Appeler la fonction read(+srssynatxes)<br />s = f.read() # lit tout le fichier :: string<br />s = f.read(n) # lit au plus n caractères:: string<br />s = f.readline() # lit la ligne suivante :: string<br />s = f.readlines() # lit tout le fichier :: liste de strings<br />for ligne in f:<br />printligne # bon procédéde parcours d’un fichier<br />Etape 3: Fermer le fichier<br />f.close()<br />9<br />
  10. 10. Exemple: Ouverture d’un fichier<br />Créer dans le dossier précédent un fichier avec un éditeur de texte tst.txt dont le contenu est le suivant<br />Ecrire un script en Python pour l’ouvrir en lecture et afficher son contenu selon les différentes méthodes<br />Début de mon fichier<br />Ligne 1<br />Ligne 2<br />Ligne 3<br />Fin de mon fichier<br />10<br />
  11. 11. Écriture dans un fichier (1/2)<br />Etape 1: Ouverture du fichier en mode écriture (write)<br />f3 = open("nomPrenom", "w")<br />Etape 2: Appeler la fonction write<br />tmpNomPrenom= "Bouchard, Josee"<br /> f3.write(tmpNomPrenom) # ecriture d’une ligne<br />lst= [’a’, ’b’, ’c’]<br />f3.writelines(lst) # ecriture d’un ensemble de lignes<br />print>> f3, "abcd"# ecritdans f3 en mode ajout<br />Etape 3: Fermer le fichier<br />f.close()<br />11<br />
  12. 12. Exemple: Ecriture dans un fichier<br />A l’aide d’un script Python, ouvrir le fichier tst.txt en mode écriture, saisir le contenu suivant<br />Ouvrez le fichier et consultez son contenu. Que constatez vous?<br />Je viens de saisir du nouveau contenu<br />Est-ce que l’ancien contenu va rester?<br />Est-ce qu’il sera écrasé?<br />12<br />
  13. 13. Écriture dans un fichier (2/2)<br />Etape 1: Ouverture du fichier en mode ajout (append)<br />f3 = open("nomPrenom", "a")<br />Etape 2: Appeler la fonction write<br />Etape 3: Fermer le fichier<br />f.close()<br />13<br />
  14. 14. Exemple: Ecriture dans un fichier<br />A l’aide d’un script Python, ouvrir le fichier tst.txt en mode ajout, saisir le contenu suivant<br />Ouvrez le fichier et consultez son contenu. Que constatez vous?<br /><ul><li>Quelle est la différence entre l’écriture en mode write et append?</li></ul>Je viens d’ajouter du nouveau contenu<br />Est-ce que ca change quelque chose?<br />14<br />
  15. 15. Noms de fichiers et de dossiers<br />Que se passe-t-il si le nom de fichier ou dossier entré en paramètre n’existe pas lorsqu’il est appelé dans:<br />fichier1 = open(nomFichier1,"r") ?<br />fichier2 = open(nomFichier2,"w") ?<br />fichier3 = open(nomFichier3,"a") ?<br />os.chdir(chemin)<br />15<br />
  16. 16. Traiter l’exception d’ouverture de fichier<br />Si nous désirons ouvrir un fichier dont le nom n’existe pas ou qui existe dans un répertoire autre que le répertoire courant: le programme génère une exception !<br />IOError: [Errno 2] No such file or directory: <br />Pour dépasser le bloc qui génère l’exception<br />Try: <br /> f1=open(nomFichier1,"r") <br />Except: # bloc à exécuter en cas de génération d’exception<br />print "Le fichier " , nomFichier1,"n’existe pas"<br />16<br />
  17. 17. Le module «Pickle»<br />Il permet la conservation des types :<br />import pickle<br />a, b = 5, 2.83<br />f = open("monFichier.txt", "w") # en ´ecriture<br />pickle.dump(a, f)<br />pickle.dump(b, f)<br />f.close()<br />f = open("monFichier.txt", "r") # en lecture<br />t = pickle.load(f)<br />print t, type(t) # 5 <type ’int’><br />t = pickle.load(f)<br />print t, type(t) # 2.83 <type ’float’><br />f.close()<br />17<br />
  18. 18. Exercice 1<br />Ecrivez un script qui permette d’encoder un fichier texte dont les lignes contiendront chacune les informations relatives à une personne donnée comme suit<br />nom, prénom, adresse, code postal et no de téléphone <br />(Considérez par exemple qu’il s’agit des membres d’un club).<br />18<br />
  19. 19. Exercice 2<br />Considérons que vous avez a votre disposition un fichier texte contenant des phrases de différentes longueurs. <br />Ecrivezun script qui recherche et affiche la phrase la plus longue.<br />19<br />
  20. 20. Exercice 3<br />A partir de deux fichiers préexistants A et B, construisez un fichier C qui contienne alternativement un élément de A, un élément de B, un élément de A... et ainsi de suite jusqu’a atteindre la fin de l’un des deux fichiers originaux. <br />Complétez ensuite C avec les éléments restant sur l’autre.<br />20<br />

×