Echange de données entre plusieurs programmes
Permet de stocker des ensembles d'informations appelés "enregistrement"
Conserver des données à la fermeture d'une application
Récupérer des données à l'ouverture d'une application
Tout d'abord, il faut définir le répertoire dans lequel les fichiers seront stockés, pour cela,
on a besoin d'importer les fonctions de la librairie os, il faut écrire en haut du programme :
from os import *
Puis :
chdir('C:CheminRepertoire')
Pour définir le dossier dans lequel on veut travailler.
Pour afficher le dossier courant :
print getcwd()
Fichier=file(NomFichier.type, mode) #Type est l'extension, .txt pour un fichier texte classique #mode est un mode d'ouverture
Modes :
Il est important de toujours fermer les fichiers après utilisation :
NomFichier.close()
En mode séquentiel, on lit les lignes les unes après les autres :
Ligne=NomFichier.readline()
Nous allons donner un exemple : Le fichier Premier.txt, dans le dossier `D:\Dossier Nombres' contient la liste des nombres premiers entre 1 et 10. Voici le contenu du fichier :
2 3 5 7
Nous voulons lire le contenu de ce fichier dans notre programme :
from os import * chdir('D:Dossier Nombres') Liste=file('Premier.txt','r') Ligne=Liste.readline() while Ligne<>"": #Tant que les lignes ne sont pas vides print Ligne Ligne=Liste.readline() Liste.close()
>>> Résultat:
2 3 5 7
Pour écrire dans un fichier, on utilise write(), en ayant préalablement ouvert le fichier en mode `w' ou `w+'.
Pour aller à la ligne, on écrit dans le fichier `\n'
Exemple : Nous voulons ajouter dans un fichier la lise des nombres premiers entre 1 et 10 en les indexant selon leur rang, c'est-à-dire :
1) 2
2) 3
3) 5
4) 7
Le fichier n'est pas encore créé.
from os import * chdir('D:Dossier Nombres') fichier=file('Premier2.txt','w') fichier.write('1) 2'+'n') fichier.write('2) 3'+'n') fichier.write('3) 5'+'n') fichier.write('4) 7'+'n') fichier.close()
>>> Résultat :
1) 2 2) 3 3) 5 4) 7