Comment lire et écrire des fichiers en Python
Lorsque vous programmez en langage Python au-delà des programmes les plus triviaux, vous devrez généralement lire et écrire des données dans des fichiers qui existent en dehors du programme lui-même. Python fournit des mécanismes simples pour accéder et modifier des fichiers spécifiques à l'aide de fonctions standard faisant partie du langage de base.
Ouvrir des fichiers en Python
Étape 1
Décider de la politique d'utilisation. Vous devez savoir si vous devez lire ou écrire dans le fichier avant de pouvoir ouvrir le fichier. N'ouvrez le fichier qu'avec les autorisations dont vous avez vraiment besoin et n'ouvrez pas un fichier en mode lecture-écriture lorsque vous n'avez besoin que de le lire. Cela empêchera les écritures accidentelles dans un fichier sur lequel vous ne devriez pas écrire.
Étape 2
Décidez si vous souhaitez utiliser le mode ASCII ou binaire. Si vous lisez du texte, vous voudrez utiliser le mode ASCII. Si vous lisez des données binaires, utilisez le mode binaire. Ce mode traduira les fins de ligne dans le mode utilisé par votre système d'exploitation.
Étape 3
Créez la chaîne de mode. Le premier caractère est en mode lecture ou écriture. Si vous souhaitez ouvrir en mode binaire, ajoutez un "b" à la fin de la chaîne. Par exemple, pour lire en mode ASCII, la chaîne de mode serait "r" et pour écrire en mode binaire, la chaîne de mode serait "wb".
Étape 4
Ouvrez le fichier à l'aide de la fonction d'ouverture. Stockez l'objet fichier résultant dans une variable. Par exemple :
f =open("/filename/goes/here", "r")
Lire à partir de fichiers en Python
Étape 1
Itérer sur toutes les lignes. Un objet fichier peut être utilisé comme une collection avec la boucle "for". Vous pouvez itérer sur toutes les lignes d'un fichier (une action courante) avec l'instruction for.
pour la ligne en f :ligne d'impression
Étape 2
Cherchez à un certain point dans le fichier. Les fichiers ne sont pas toujours lus séquentiellement, il est donc souvent nécessaire de rechercher un certain point dans le fichier avant de lire à partir du fichier. Vous pouvez le faire avec la méthode de recherche d'un objet fichier.
Recherche jusqu'au 100e octet f.seek(100)
Rechercher jusqu'à 10 octets à partir de l'octet actuel f.seek(10, 1)
Étape 3
Lire des données binaires à partir d'un fichier. En utilisant la méthode de lecture d'un objet fichier, vous pouvez lire un nombre arbitraire d'octets à partir d'un fichier.
Lire 16 octets du fichier buf =f.read(16)
Écrire dans des fichiers Python
Étape 1
Écrire des données dans un fichier. Si un fichier est ouvert en mode écriture, vous pouvez y écrire des données ASCII ou binaires. Cela se fait avec la méthode d'écriture d'un objet fichier.
f.write("Ceci est du texte")
Étape 2
Écrire des objets dans un fichier. Si vous avez besoin de sauvegarder l'état interne d'un objet, vous pouvez le "décaper". Pour décaper un objet, vous devez d'abord importer le module pickle. Après cela, vous pouvez décaper presque n'importe quel objet avec la fonction pickle.dump.
importer du cornichon pickle.dump(any_object,f)
Étape 3
Fermez le fichier. Une fois l'écriture terminée, vous devez fermer le fichier. Cela garantit que tous les tampons sont vidés et que le fichier n'est pas verrouillé afin que d'autres programmes puissent y accéder. Cela se fait avec la méthode close d'un objet fichier.
f.close()