SlideShare une entreprise Scribd logo
1  sur  5
Télécharger pour lire hors ligne
[LES FICHIERS EN PYTHON] ESPRIMS’
Mariem ZAOUALI | Chapitre 6 : Les fichiers en Python 1
Chapitre 6 : Les fichiers en Python
 Manipulation des fichiers textes et binaires : Ouverture, lecture, écriture et
fermeture
Manipulation des fichiers
On appellera fichier toute collection de données (textuelles ou binaires) enregistrée
sur un support physique (un disque dur, une clé usb, etc). Un fichier peut être
accessible en lecture seule, ou en lecture/écriture. Pour pouvoir être consulté et/ou
modifié, il doit être ouvert d’abord, puis fermé ensuite (mais Python se charge
souvent de fermer le fichier lui-même quand tout est terminé).
Dans la suite, on suppose qu’on se place uniquement dans le dossier courant. Les
fichiers seront donc désignés par leur nom, simplement, sans indication d’un chemin
d’accès. Mais si on veut un contrôle précis sur les dossiers, on importera le module os
(operating system) qui fournit quelques fonctions utiles :
 os.getcwd() : renvoie le dossier actuel
 os.chdir(‘chemin’) : désigne un nouveau dossier de travail
a. Manipulation des fichiers textes
Ouverture :
varFichier=open(NomFichier,ModeTypAccess)
La commande nécessite deux paramètres pour créer une variable en mémoire qui
représente le fichier physique nommé NomFichier :
 Le nom physique du fichier sur le support qui est généralement stocké dans le
répertoire courant de Python
 Le mode d’accès : Trois modes sont possibles
o w: ‘writing’ : si le fichier existe déjà son contenu sera remplacé par un
nouveau contenu, dans le cas contraire, on crée un fichier en mode
écriture pour y enregistrer du texte.
o r: ‘reading’ : Le mode lecture : le fichier est ouvert pour qu’il soit
consulté
o a :’append’ : C’est un mode semblable au mode ‘w’ sauf qu’on
n’écrase pas l’ancien contenu du fichier, mais on ajoute à la fin du
fichier de chaînes de caractères nouvelles
 Le type d’accès
o ‘t’ : le fichier est considéré comme une suite de caractères ascii : c’est
le mode texte
o ‘b’ : le fichier est considéré comme une suite d’octets : c’est le mode
binaire
Exemple :
[LES FICHIERS EN PYTHON] ESPRIMS’
Mariem ZAOUALI | Chapitre 6 : Les fichiers en Python 2
Ecriture :
varFichier.write(chaine_de_caracteres)
La commande write enregistre la chaine dans le fichier et retourne la longueur de
cette dernière.
Il faut toujours penser à fermer le fichier à la fin de son utilisation surtout qu’il est
ouvert en mode ‘w’ ou ‘a’ pour que les modifications soient enregistrées. La
commande closed permet de tester si le fichier est fermé avec succès, son résultat
est booléen.
Consultant le fichier créé ! Les chaines sont écrites sur une même ligne ! Pour écrire
sur plusieurs lignes, il faut ajouter le caractère ‘n’ à la fin de chaque chaîne au
niveau de la commande write :
On peut utiliser un conteneur pour stocker des chaînes dans un fichier :
[LES FICHIERS EN PYTHON] ESPRIMS’
Mariem ZAOUALI | Chapitre 6 : Les fichiers en Python 3
Ecriture en fin de fichier :
Lecture :
Avant de pouvoir lire le contenu d’un fichier, on doit l’ouvrir en mode lecture texte
avec la commande open(nomFichier,’rt’). La consultation du contenu peut
s’effectuer de trois manières :
 varFichier.read() : Affiche le contenu intégral du fichier :
 varFichier.readline : lit le fichier ligne par ligne, à chaque fois qu’on rencontre
le caractère ‘n’, on s’arrête :
Autrement :
 varFichier.readlines() : retourne une liste constituée des lignes du fichier :
[LES FICHIERS EN PYTHON] ESPRIMS’
Mariem ZAOUALI | Chapitre 6 : Les fichiers en Python 4
b. Manipulation des fichiers binaires
La sérialisation (l’enregistrement) des variables de tout type en Python est possible.
Ainsi, aucune variable ne sera effacée dès qu’on quitte le prompt et ce grâce au
module pickle. On ne parle plus de fichiers texte, mais de fichiers de flux binaires.
 Ouverture :
o varFichier=open(nomFichier,’wb’) : ouvre un fichier binaire en mode
écriture
o varFichier=open(nomFichier,’rb’) : ouvre un fichier binaire en mode
lecture
 Ecriture :
o On utilise la commande dump du module pickle :
pickle.dump(objet,varFichier) à condition que le module pickle est
déjà chargé, l’objet python est déjà créé et le fichier est déjà ouvert
en mode écriture binaire :
 Lecture :
o On utilise toujours le module pickle, spécifiquement la méthode load.
On peut utiliser cette méthode autant que l’on veut à condition de ne
pas dépasser la taille du fichier, sinon une exception EOFError sera
levée :
o Pour éviter cette exception, on emploie les clauses try..except
[LES FICHIERS EN PYTHON] ESPRIMS’
Mariem ZAOUALI | Chapitre 6 : Les fichiers en Python 5

Contenu connexe

Tendances

Systemes d'explotation: Threads
Systemes d'explotation: ThreadsSystemes d'explotation: Threads
Systemes d'explotation: ThreadsAlexandru Radovici
 
Xp protégez vos fichiers ...
Xp   protégez vos fichiers ...Xp   protégez vos fichiers ...
Xp protégez vos fichiers ...Corm75
 
Installation et configuration du servuer ftp et tftp
Installation et configuration du servuer ftp et tftpInstallation et configuration du servuer ftp et tftp
Installation et configuration du servuer ftp et tftpAmdy Moustapha
 
SdE TP 3 - Fonctions d'entrée et sortie
SdE TP 3 - Fonctions d'entrée et sortieSdE TP 3 - Fonctions d'entrée et sortie
SdE TP 3 - Fonctions d'entrée et sortieAlexandru Radovici
 
FreeBSD vs Linux, RMLL 2014
FreeBSD vs Linux, RMLL 2014FreeBSD vs Linux, RMLL 2014
FreeBSD vs Linux, RMLL 2014Loïc Tosser
 
Présentation unix linux
Présentation unix linuxPrésentation unix linux
Présentation unix linuxEmmanuel Florac
 
Développement des chaînes de traitement d'images GEOSUD
Développement des chaînes de traitement d'images GEOSUDDéveloppement des chaînes de traitement d'images GEOSUD
Développement des chaînes de traitement d'images GEOSUDotb
 
Processus pére fils
Processus pére filsProcessus pére fils
Processus pére filsSelman Dridi
 

Tendances (16)

SdE 6 - Gestion de la memoire
SdE 6 - Gestion de la memoireSdE 6 - Gestion de la memoire
SdE 6 - Gestion de la memoire
 
Systemes d'explotation: Threads
Systemes d'explotation: ThreadsSystemes d'explotation: Threads
Systemes d'explotation: Threads
 
SdE 1 - Introduction
SdE 1 - IntroductionSdE 1 - Introduction
SdE 1 - Introduction
 
SdE 3 - System de fichiers
SdE 3 - System de fichiersSdE 3 - System de fichiers
SdE 3 - System de fichiers
 
Xp protégez vos fichiers ...
Xp   protégez vos fichiers ...Xp   protégez vos fichiers ...
Xp protégez vos fichiers ...
 
Installation et configuration du servuer ftp et tftp
Installation et configuration du servuer ftp et tftpInstallation et configuration du servuer ftp et tftp
Installation et configuration du servuer ftp et tftp
 
Initiation Linux
Initiation LinuxInitiation Linux
Initiation Linux
 
SdE TP 3 - Fonctions d'entrée et sortie
SdE TP 3 - Fonctions d'entrée et sortieSdE TP 3 - Fonctions d'entrée et sortie
SdE TP 3 - Fonctions d'entrée et sortie
 
FreeBSD vs Linux, RMLL 2014
FreeBSD vs Linux, RMLL 2014FreeBSD vs Linux, RMLL 2014
FreeBSD vs Linux, RMLL 2014
 
Rar
RarRar
Rar
 
Linux commandes
Linux commandesLinux commandes
Linux commandes
 
Présentation unix linux
Présentation unix linuxPrésentation unix linux
Présentation unix linux
 
Développement des chaînes de traitement d'images GEOSUD
Développement des chaînes de traitement d'images GEOSUDDéveloppement des chaînes de traitement d'images GEOSUD
Développement des chaînes de traitement d'images GEOSUD
 
SdE - Introduction
SdE - IntroductionSdE - Introduction
SdE - Introduction
 
Processus pére fils
Processus pére filsProcessus pére fils
Processus pére fils
 
SdE 3 - Systemes de fichiers
SdE 3 - Systemes de fichiersSdE 3 - Systemes de fichiers
SdE 3 - Systemes de fichiers
 

Similaire à Chap6 Manipulation des fichiers

Les_fichiers_sousPython..TXT et JSON et csv
Les_fichiers_sousPython..TXT et JSON et csvLes_fichiers_sousPython..TXT et JSON et csv
Les_fichiers_sousPython..TXT et JSON et csvnadiamfr1
 
Manipulation_des_fichiers_en_C.ppsx
Manipulation_des_fichiers_en_C.ppsxManipulation_des_fichiers_en_C.ppsx
Manipulation_des_fichiers_en_C.ppsxYallaHabibi5
 
Manipulation des fichiers en C.pptx
Manipulation des fichiers en C.pptxManipulation des fichiers en C.pptx
Manipulation des fichiers en C.pptxolfaharrabi2
 
Chapitre_Les fichiers_VF.pptx
Chapitre_Les fichiers_VF.pptxChapitre_Les fichiers_VF.pptx
Chapitre_Les fichiers_VF.pptxMoez Moezm
 
Pres_ java_Fichier_Suite_cour sur les fichier en java.pdf
Pres_ java_Fichier_Suite_cour sur les fichier en java.pdfPres_ java_Fichier_Suite_cour sur les fichier en java.pdf
Pres_ java_Fichier_Suite_cour sur les fichier en java.pdfHERGALYOUSSEF
 
Le système d’E/S en Java
Le système d’E/S en JavaLe système d’E/S en Java
Le système d’E/S en JavaKorteby Farouk
 
Stockage de données dans Android : Fichiers
Stockage de données dans Android : FichiersStockage de données dans Android : Fichiers
Stockage de données dans Android : FichiersLilia Sfaxi
 
Cours_Linux_S1_Partie 2.pptx
Cours_Linux_S1_Partie 2.pptxCours_Linux_S1_Partie 2.pptx
Cours_Linux_S1_Partie 2.pptxKhalil BOUKRI
 
Entrees sorties
Entrees sortiesEntrees sorties
Entrees sortiesyazidds2
 
Formation Linux - Initiation
Formation Linux - InitiationFormation Linux - Initiation
Formation Linux - Initiationrobertpluss
 
les Commandes linux/Unix (giants networks)
les Commandes linux/Unix (giants networks)les Commandes linux/Unix (giants networks)
les Commandes linux/Unix (giants networks)Souhaib El
 
Administration linux
Administration linuxAdministration linux
Administration linuxJoeongala
 

Similaire à Chap6 Manipulation des fichiers (14)

Les_fichiers_sousPython..TXT et JSON et csv
Les_fichiers_sousPython..TXT et JSON et csvLes_fichiers_sousPython..TXT et JSON et csv
Les_fichiers_sousPython..TXT et JSON et csv
 
Manipulation_des_fichiers_en_C.ppsx
Manipulation_des_fichiers_en_C.ppsxManipulation_des_fichiers_en_C.ppsx
Manipulation_des_fichiers_en_C.ppsx
 
Manipulation des fichiers en C.pptx
Manipulation des fichiers en C.pptxManipulation des fichiers en C.pptx
Manipulation des fichiers en C.pptx
 
Chapitre_Les fichiers_VF.pptx
Chapitre_Les fichiers_VF.pptxChapitre_Les fichiers_VF.pptx
Chapitre_Les fichiers_VF.pptx
 
Tp n 3 linux
Tp n 3 linuxTp n 3 linux
Tp n 3 linux
 
Pres_ java_Fichier_Suite_cour sur les fichier en java.pdf
Pres_ java_Fichier_Suite_cour sur les fichier en java.pdfPres_ java_Fichier_Suite_cour sur les fichier en java.pdf
Pres_ java_Fichier_Suite_cour sur les fichier en java.pdf
 
Le système d’E/S en Java
Le système d’E/S en JavaLe système d’E/S en Java
Le système d’E/S en Java
 
Stockage de données dans Android : Fichiers
Stockage de données dans Android : FichiersStockage de données dans Android : Fichiers
Stockage de données dans Android : Fichiers
 
Cours_Linux_S1_Partie 2.pptx
Cours_Linux_S1_Partie 2.pptxCours_Linux_S1_Partie 2.pptx
Cours_Linux_S1_Partie 2.pptx
 
Entrees sorties
Entrees sortiesEntrees sorties
Entrees sorties
 
Ch1 p1
Ch1 p1Ch1 p1
Ch1 p1
 
Formation Linux - Initiation
Formation Linux - InitiationFormation Linux - Initiation
Formation Linux - Initiation
 
les Commandes linux/Unix (giants networks)
les Commandes linux/Unix (giants networks)les Commandes linux/Unix (giants networks)
les Commandes linux/Unix (giants networks)
 
Administration linux
Administration linuxAdministration linux
Administration linux
 

Plus de Mariem ZAOUALI

Chap5 La manipulation des iterables en python
Chap5 La manipulation des iterables en pythonChap5 La manipulation des iterables en python
Chap5 La manipulation des iterables en pythonMariem ZAOUALI
 
Chap7 simulation numérique
Chap7 simulation numériqueChap7 simulation numérique
Chap7 simulation numériqueMariem ZAOUALI
 
Chap4 Récursivité en python
Chap4 Récursivité en pythonChap4 Récursivité en python
Chap4 Récursivité en pythonMariem ZAOUALI
 
Chap3 programmation modulaire en python
Chap3 programmation modulaire en pythonChap3 programmation modulaire en python
Chap3 programmation modulaire en pythonMariem ZAOUALI
 
Chap2 Les conteneurs en python
Chap2 Les conteneurs en pythonChap2 Les conteneurs en python
Chap2 Les conteneurs en pythonMariem ZAOUALI
 
Chap1 Introduction à python
Chap1 Introduction à pythonChap1 Introduction à python
Chap1 Introduction à pythonMariem ZAOUALI
 
Tp1 design patternappliques
Tp1 design patternappliquesTp1 design patternappliques
Tp1 design patternappliquesMariem ZAOUALI
 
Cours 4 intergiciels orientes messages jms
Cours 4 intergiciels orientes messages  jmsCours 4 intergiciels orientes messages  jms
Cours 4 intergiciels orientes messages jmsMariem ZAOUALI
 
Cours 2 les architectures reparties
Cours 2 les architectures repartiesCours 2 les architectures reparties
Cours 2 les architectures repartiesMariem ZAOUALI
 
Cours 3 les objets distants rmi corba
Cours 3 les objets distants rmi corbaCours 3 les objets distants rmi corba
Cours 3 les objets distants rmi corbaMariem ZAOUALI
 
Cours 1 les principes de base
Cours 1 les principes de baseCours 1 les principes de base
Cours 1 les principes de baseMariem ZAOUALI
 
TP1 Traitement d'images Génie Logiciel avec Matlab
TP1 Traitement d'images Génie Logiciel avec MatlabTP1 Traitement d'images Génie Logiciel avec Matlab
TP1 Traitement d'images Génie Logiciel avec MatlabMariem ZAOUALI
 
Comment retrouver la forme récursive
Comment retrouver la forme récursiveComment retrouver la forme récursive
Comment retrouver la forme récursiveMariem ZAOUALI
 
Correction TP4 Atelier C++ /GL2 INSAT / Tunisie
Correction TP4 Atelier C++ /GL2 INSAT / TunisieCorrection TP4 Atelier C++ /GL2 INSAT / Tunisie
Correction TP4 Atelier C++ /GL2 INSAT / TunisieMariem ZAOUALI
 
TP4 Atelier C++ /GL2 INSAT / Tunisie
TP4 Atelier C++ /GL2 INSAT / TunisieTP4 Atelier C++ /GL2 INSAT / Tunisie
TP4 Atelier C++ /GL2 INSAT / TunisieMariem ZAOUALI
 
TP3 Atelier C++/ GL2 INSAT / Tunisie
TP3 Atelier C++/ GL2 INSAT / TunisieTP3 Atelier C++/ GL2 INSAT / Tunisie
TP3 Atelier C++/ GL2 INSAT / TunisieMariem ZAOUALI
 
TP2 Atelier C++/ GL2 INSAT / Tunisie
TP2 Atelier C++/ GL2 INSAT / TunisieTP2 Atelier C++/ GL2 INSAT / Tunisie
TP2 Atelier C++/ GL2 INSAT / TunisieMariem ZAOUALI
 
TP1 Atelier C++/ GL2 INSAT / Tunisie
TP1 Atelier C++/ GL2 INSAT / TunisieTP1 Atelier C++/ GL2 INSAT / Tunisie
TP1 Atelier C++/ GL2 INSAT / TunisieMariem ZAOUALI
 
Graduation Project Presentation _ INSAT Tunisia
Graduation Project Presentation _ INSAT Tunisia Graduation Project Presentation _ INSAT Tunisia
Graduation Project Presentation _ INSAT Tunisia Mariem ZAOUALI
 

Plus de Mariem ZAOUALI (20)

Chap5 La manipulation des iterables en python
Chap5 La manipulation des iterables en pythonChap5 La manipulation des iterables en python
Chap5 La manipulation des iterables en python
 
Chap7 simulation numérique
Chap7 simulation numériqueChap7 simulation numérique
Chap7 simulation numérique
 
Chap4 Récursivité en python
Chap4 Récursivité en pythonChap4 Récursivité en python
Chap4 Récursivité en python
 
Chap3 programmation modulaire en python
Chap3 programmation modulaire en pythonChap3 programmation modulaire en python
Chap3 programmation modulaire en python
 
Chap2 Les conteneurs en python
Chap2 Les conteneurs en pythonChap2 Les conteneurs en python
Chap2 Les conteneurs en python
 
Chap1 Introduction à python
Chap1 Introduction à pythonChap1 Introduction à python
Chap1 Introduction à python
 
Tp1 design patternappliques
Tp1 design patternappliquesTp1 design patternappliques
Tp1 design patternappliques
 
TP2 RMI
TP2 RMITP2 RMI
TP2 RMI
 
Cours 4 intergiciels orientes messages jms
Cours 4 intergiciels orientes messages  jmsCours 4 intergiciels orientes messages  jms
Cours 4 intergiciels orientes messages jms
 
Cours 2 les architectures reparties
Cours 2 les architectures repartiesCours 2 les architectures reparties
Cours 2 les architectures reparties
 
Cours 3 les objets distants rmi corba
Cours 3 les objets distants rmi corbaCours 3 les objets distants rmi corba
Cours 3 les objets distants rmi corba
 
Cours 1 les principes de base
Cours 1 les principes de baseCours 1 les principes de base
Cours 1 les principes de base
 
TP1 Traitement d'images Génie Logiciel avec Matlab
TP1 Traitement d'images Génie Logiciel avec MatlabTP1 Traitement d'images Génie Logiciel avec Matlab
TP1 Traitement d'images Génie Logiciel avec Matlab
 
Comment retrouver la forme récursive
Comment retrouver la forme récursiveComment retrouver la forme récursive
Comment retrouver la forme récursive
 
Correction TP4 Atelier C++ /GL2 INSAT / Tunisie
Correction TP4 Atelier C++ /GL2 INSAT / TunisieCorrection TP4 Atelier C++ /GL2 INSAT / Tunisie
Correction TP4 Atelier C++ /GL2 INSAT / Tunisie
 
TP4 Atelier C++ /GL2 INSAT / Tunisie
TP4 Atelier C++ /GL2 INSAT / TunisieTP4 Atelier C++ /GL2 INSAT / Tunisie
TP4 Atelier C++ /GL2 INSAT / Tunisie
 
TP3 Atelier C++/ GL2 INSAT / Tunisie
TP3 Atelier C++/ GL2 INSAT / TunisieTP3 Atelier C++/ GL2 INSAT / Tunisie
TP3 Atelier C++/ GL2 INSAT / Tunisie
 
TP2 Atelier C++/ GL2 INSAT / Tunisie
TP2 Atelier C++/ GL2 INSAT / TunisieTP2 Atelier C++/ GL2 INSAT / Tunisie
TP2 Atelier C++/ GL2 INSAT / Tunisie
 
TP1 Atelier C++/ GL2 INSAT / Tunisie
TP1 Atelier C++/ GL2 INSAT / TunisieTP1 Atelier C++/ GL2 INSAT / Tunisie
TP1 Atelier C++/ GL2 INSAT / Tunisie
 
Graduation Project Presentation _ INSAT Tunisia
Graduation Project Presentation _ INSAT Tunisia Graduation Project Presentation _ INSAT Tunisia
Graduation Project Presentation _ INSAT Tunisia
 

Dernier

GAL2024 - Traite des vaches laitières : au coeur des stratégies d'évolution d...
GAL2024 - Traite des vaches laitières : au coeur des stratégies d'évolution d...GAL2024 - Traite des vaches laitières : au coeur des stratégies d'évolution d...
GAL2024 - Traite des vaches laitières : au coeur des stratégies d'évolution d...Institut de l'Elevage - Idele
 
JTC 2024 - SMARTER Retour sur les indicateurs de santé .pdf
JTC 2024 - SMARTER Retour sur les indicateurs de santé .pdfJTC 2024 - SMARTER Retour sur les indicateurs de santé .pdf
JTC 2024 - SMARTER Retour sur les indicateurs de santé .pdfInstitut de l'Elevage - Idele
 
GAL2024 - Décarbonation du secteur laitier : la filière s'engage
GAL2024 - Décarbonation du secteur laitier : la filière s'engageGAL2024 - Décarbonation du secteur laitier : la filière s'engage
GAL2024 - Décarbonation du secteur laitier : la filière s'engageInstitut de l'Elevage - Idele
 
JTC 2024 La relance de la filière de la viande de chevreau.pdf
JTC 2024 La relance de la filière de la viande de chevreau.pdfJTC 2024 La relance de la filière de la viande de chevreau.pdf
JTC 2024 La relance de la filière de la viande de chevreau.pdfInstitut de l'Elevage - Idele
 
GAL2024 - Changements climatiques et maladies émergentes
GAL2024 - Changements climatiques et maladies émergentesGAL2024 - Changements climatiques et maladies émergentes
GAL2024 - Changements climatiques et maladies émergentesInstitut de l'Elevage - Idele
 
GAL2024 - Situation laitière 2023-2024 : consommation, marchés, prix et revenus
GAL2024 - Situation laitière 2023-2024 : consommation, marchés, prix et revenusGAL2024 - Situation laitière 2023-2024 : consommation, marchés, prix et revenus
GAL2024 - Situation laitière 2023-2024 : consommation, marchés, prix et revenusInstitut de l'Elevage - Idele
 
JTC 2024 - Réglementation européenne BEA et Transport.pdf
JTC 2024 - Réglementation européenne BEA et Transport.pdfJTC 2024 - Réglementation européenne BEA et Transport.pdf
JTC 2024 - Réglementation européenne BEA et Transport.pdfInstitut de l'Elevage - Idele
 
comprehension de DDMRP dans le domaine de gestion
comprehension de DDMRP dans le domaine de gestioncomprehension de DDMRP dans le domaine de gestion
comprehension de DDMRP dans le domaine de gestionyakinekaidouchi1
 
Algo II : les piles ( cours + exercices)
Algo II :  les piles ( cours + exercices)Algo II :  les piles ( cours + exercices)
Algo II : les piles ( cours + exercices)Sana REFAI
 
JTC 2024 - Leviers d’adaptation au changement climatique, qualité du lait et ...
JTC 2024 - Leviers d’adaptation au changement climatique, qualité du lait et ...JTC 2024 - Leviers d’adaptation au changement climatique, qualité du lait et ...
JTC 2024 - Leviers d’adaptation au changement climatique, qualité du lait et ...Institut de l'Elevage - Idele
 
GAL2024 - Renouvellement des actifs : un enjeu pour la filière laitière franç...
GAL2024 - Renouvellement des actifs : un enjeu pour la filière laitière franç...GAL2024 - Renouvellement des actifs : un enjeu pour la filière laitière franç...
GAL2024 - Renouvellement des actifs : un enjeu pour la filière laitière franç...Institut de l'Elevage - Idele
 
Câblage, installation et paramétrage d’un réseau informatique.pdf
Câblage, installation et paramétrage d’un réseau informatique.pdfCâblage, installation et paramétrage d’un réseau informatique.pdf
Câblage, installation et paramétrage d’un réseau informatique.pdfmia884611
 
GAL2024 - L'élevage laitier cultive la biodiversité
GAL2024 - L'élevage laitier cultive la biodiversitéGAL2024 - L'élevage laitier cultive la biodiversité
GAL2024 - L'élevage laitier cultive la biodiversitéInstitut de l'Elevage - Idele
 

Dernier (15)

GAL2024 - Traite des vaches laitières : au coeur des stratégies d'évolution d...
GAL2024 - Traite des vaches laitières : au coeur des stratégies d'évolution d...GAL2024 - Traite des vaches laitières : au coeur des stratégies d'évolution d...
GAL2024 - Traite des vaches laitières : au coeur des stratégies d'évolution d...
 
JTC 2024 - SMARTER Retour sur les indicateurs de santé .pdf
JTC 2024 - SMARTER Retour sur les indicateurs de santé .pdfJTC 2024 - SMARTER Retour sur les indicateurs de santé .pdf
JTC 2024 - SMARTER Retour sur les indicateurs de santé .pdf
 
GAL2024 - Décarbonation du secteur laitier : la filière s'engage
GAL2024 - Décarbonation du secteur laitier : la filière s'engageGAL2024 - Décarbonation du secteur laitier : la filière s'engage
GAL2024 - Décarbonation du secteur laitier : la filière s'engage
 
JTC 2024 La relance de la filière de la viande de chevreau.pdf
JTC 2024 La relance de la filière de la viande de chevreau.pdfJTC 2024 La relance de la filière de la viande de chevreau.pdf
JTC 2024 La relance de la filière de la viande de chevreau.pdf
 
JTC 2024 - DeCremoux_Anomalies_génétiques.pdf
JTC 2024 - DeCremoux_Anomalies_génétiques.pdfJTC 2024 - DeCremoux_Anomalies_génétiques.pdf
JTC 2024 - DeCremoux_Anomalies_génétiques.pdf
 
GAL2024 - Changements climatiques et maladies émergentes
GAL2024 - Changements climatiques et maladies émergentesGAL2024 - Changements climatiques et maladies émergentes
GAL2024 - Changements climatiques et maladies émergentes
 
GAL2024 - Situation laitière 2023-2024 : consommation, marchés, prix et revenus
GAL2024 - Situation laitière 2023-2024 : consommation, marchés, prix et revenusGAL2024 - Situation laitière 2023-2024 : consommation, marchés, prix et revenus
GAL2024 - Situation laitière 2023-2024 : consommation, marchés, prix et revenus
 
JTC 2024 - Réglementation européenne BEA et Transport.pdf
JTC 2024 - Réglementation européenne BEA et Transport.pdfJTC 2024 - Réglementation européenne BEA et Transport.pdf
JTC 2024 - Réglementation européenne BEA et Transport.pdf
 
comprehension de DDMRP dans le domaine de gestion
comprehension de DDMRP dans le domaine de gestioncomprehension de DDMRP dans le domaine de gestion
comprehension de DDMRP dans le domaine de gestion
 
Algo II : les piles ( cours + exercices)
Algo II :  les piles ( cours + exercices)Algo II :  les piles ( cours + exercices)
Algo II : les piles ( cours + exercices)
 
JTC 2024 - Leviers d’adaptation au changement climatique, qualité du lait et ...
JTC 2024 - Leviers d’adaptation au changement climatique, qualité du lait et ...JTC 2024 - Leviers d’adaptation au changement climatique, qualité du lait et ...
JTC 2024 - Leviers d’adaptation au changement climatique, qualité du lait et ...
 
GAL2024 - Renouvellement des actifs : un enjeu pour la filière laitière franç...
GAL2024 - Renouvellement des actifs : un enjeu pour la filière laitière franç...GAL2024 - Renouvellement des actifs : un enjeu pour la filière laitière franç...
GAL2024 - Renouvellement des actifs : un enjeu pour la filière laitière franç...
 
Câblage, installation et paramétrage d’un réseau informatique.pdf
Câblage, installation et paramétrage d’un réseau informatique.pdfCâblage, installation et paramétrage d’un réseau informatique.pdf
Câblage, installation et paramétrage d’un réseau informatique.pdf
 
GAL2024 - L'élevage laitier cultive la biodiversité
GAL2024 - L'élevage laitier cultive la biodiversitéGAL2024 - L'élevage laitier cultive la biodiversité
GAL2024 - L'élevage laitier cultive la biodiversité
 
CAP2ER_GC_Presentation_Outil_20240422.pptx
CAP2ER_GC_Presentation_Outil_20240422.pptxCAP2ER_GC_Presentation_Outil_20240422.pptx
CAP2ER_GC_Presentation_Outil_20240422.pptx
 

Chap6 Manipulation des fichiers

  • 1. [LES FICHIERS EN PYTHON] ESPRIMS’ Mariem ZAOUALI | Chapitre 6 : Les fichiers en Python 1 Chapitre 6 : Les fichiers en Python  Manipulation des fichiers textes et binaires : Ouverture, lecture, écriture et fermeture Manipulation des fichiers On appellera fichier toute collection de données (textuelles ou binaires) enregistrée sur un support physique (un disque dur, une clé usb, etc). Un fichier peut être accessible en lecture seule, ou en lecture/écriture. Pour pouvoir être consulté et/ou modifié, il doit être ouvert d’abord, puis fermé ensuite (mais Python se charge souvent de fermer le fichier lui-même quand tout est terminé). Dans la suite, on suppose qu’on se place uniquement dans le dossier courant. Les fichiers seront donc désignés par leur nom, simplement, sans indication d’un chemin d’accès. Mais si on veut un contrôle précis sur les dossiers, on importera le module os (operating system) qui fournit quelques fonctions utiles :  os.getcwd() : renvoie le dossier actuel  os.chdir(‘chemin’) : désigne un nouveau dossier de travail a. Manipulation des fichiers textes Ouverture : varFichier=open(NomFichier,ModeTypAccess) La commande nécessite deux paramètres pour créer une variable en mémoire qui représente le fichier physique nommé NomFichier :  Le nom physique du fichier sur le support qui est généralement stocké dans le répertoire courant de Python  Le mode d’accès : Trois modes sont possibles o w: ‘writing’ : si le fichier existe déjà son contenu sera remplacé par un nouveau contenu, dans le cas contraire, on crée un fichier en mode écriture pour y enregistrer du texte. o r: ‘reading’ : Le mode lecture : le fichier est ouvert pour qu’il soit consulté o a :’append’ : C’est un mode semblable au mode ‘w’ sauf qu’on n’écrase pas l’ancien contenu du fichier, mais on ajoute à la fin du fichier de chaînes de caractères nouvelles  Le type d’accès o ‘t’ : le fichier est considéré comme une suite de caractères ascii : c’est le mode texte o ‘b’ : le fichier est considéré comme une suite d’octets : c’est le mode binaire Exemple :
  • 2. [LES FICHIERS EN PYTHON] ESPRIMS’ Mariem ZAOUALI | Chapitre 6 : Les fichiers en Python 2 Ecriture : varFichier.write(chaine_de_caracteres) La commande write enregistre la chaine dans le fichier et retourne la longueur de cette dernière. Il faut toujours penser à fermer le fichier à la fin de son utilisation surtout qu’il est ouvert en mode ‘w’ ou ‘a’ pour que les modifications soient enregistrées. La commande closed permet de tester si le fichier est fermé avec succès, son résultat est booléen. Consultant le fichier créé ! Les chaines sont écrites sur une même ligne ! Pour écrire sur plusieurs lignes, il faut ajouter le caractère ‘n’ à la fin de chaque chaîne au niveau de la commande write : On peut utiliser un conteneur pour stocker des chaînes dans un fichier :
  • 3. [LES FICHIERS EN PYTHON] ESPRIMS’ Mariem ZAOUALI | Chapitre 6 : Les fichiers en Python 3 Ecriture en fin de fichier : Lecture : Avant de pouvoir lire le contenu d’un fichier, on doit l’ouvrir en mode lecture texte avec la commande open(nomFichier,’rt’). La consultation du contenu peut s’effectuer de trois manières :  varFichier.read() : Affiche le contenu intégral du fichier :  varFichier.readline : lit le fichier ligne par ligne, à chaque fois qu’on rencontre le caractère ‘n’, on s’arrête : Autrement :  varFichier.readlines() : retourne une liste constituée des lignes du fichier :
  • 4. [LES FICHIERS EN PYTHON] ESPRIMS’ Mariem ZAOUALI | Chapitre 6 : Les fichiers en Python 4 b. Manipulation des fichiers binaires La sérialisation (l’enregistrement) des variables de tout type en Python est possible. Ainsi, aucune variable ne sera effacée dès qu’on quitte le prompt et ce grâce au module pickle. On ne parle plus de fichiers texte, mais de fichiers de flux binaires.  Ouverture : o varFichier=open(nomFichier,’wb’) : ouvre un fichier binaire en mode écriture o varFichier=open(nomFichier,’rb’) : ouvre un fichier binaire en mode lecture  Ecriture : o On utilise la commande dump du module pickle : pickle.dump(objet,varFichier) à condition que le module pickle est déjà chargé, l’objet python est déjà créé et le fichier est déjà ouvert en mode écriture binaire :  Lecture : o On utilise toujours le module pickle, spécifiquement la méthode load. On peut utiliser cette méthode autant que l’on veut à condition de ne pas dépasser la taille du fichier, sinon une exception EOFError sera levée : o Pour éviter cette exception, on emploie les clauses try..except
  • 5. [LES FICHIERS EN PYTHON] ESPRIMS’ Mariem ZAOUALI | Chapitre 6 : Les fichiers en Python 5