Comment ouvrir et modifier un fichier existant en Python?
J'ai travaillé pendant un certain temps maintenant sur une variété de différents programmes pour la pratique de mon Python, le plus notable étant mon choisir-votre-propre-aventure jeu, qui est bien plus de 1000 lignes de mesure. Plus récemment, j'ai essayé de modifier les fichiers à partir de Python, et je n'arrive pas à le comprendre. Par exemple, si je définis une variable à une entrée de l'utilisateur comme ceci:
input1 = raw_input("What is your favorite food?")
Alors, disons que je veux enregistrer ce texte pour une .txt fichier qui existe déjà, comme food.txt
. Comment dois-je procéder?
- "J'ai essayé de modifier les fichiers à partir de Python ..." - alors, pouvez-vous montrer à quel est le code que vous avez, et pourquoi il ne fonctionne pas.
- Voulez-vous ajouter le nouveau contenu?
Vous devez vous connecter pour publier un commentaire.
ce lien peut-être aura de l'aide,
le code comme
'w'
mode n'est pas une bonne idée, vous perdrez le contenu de votre fichier.La
open()
intégré dans la méthode Python (doc) utilise normalement deux arguments: le chemin d'accès au fichier et la mode. Vous disposez de trois modes principaux (le plus utilisé):r
,w
eta
.r
signifie lire et fera l'open("/path/to/myFile.txt", 'r')
pour ouvrir un fichier existant et de ne pouvoir le lire (pas de montage), avecmyFile.readlines()
ou d'autres méthodes que vous pouvez trouver dans cette documentation.w
signifie écrire et permettra non seulement de tout effacer le fichier (si elle existait), mais vous permettent d'écrire de nouvelles choses sur elle par le biais demyFile.write("stuff I want to write")
.a
signifie ajouter et ajouter du contenu à un fichier existant sans effacer ce qui pourrait avoir été écrit sur elle. C'est l'argument que vous devez utiliser lors de l'ajout de lignes non vides de fichiers.Vous ne devez pas oublier de fermer le fichier une fois que vous avez fini de travailler avec
myFile.close()
parce que c'est seulement à ce point où tous les changements, mises à jour, des écrits, sont fait.Un petit exemple de code pour l'ajout d'une ligne:
Si le contenu du fichier ont été quelque chose comme
Ensuite le fichier, après le code, ressemble
Pour ouvrir un fichier nommé food.txt
D'écrire une nouvelle ligne:
enlever le \n si vous le souhaitez sur la même ligne.
à lire, vous pouvez le faire par exemple
Si vous voulez ajouter:
votre question est un peu ambigu, mais si vous êtes à la recherche d'un moyen de stocker des valeurs pour une utilisation ultérieure et la récupération facile; vous pourriez vouloir vérifier ConfigParser. 🙂
Que je trouve beau module pour cette tâche - in_place, exemple pour Python 3: