2017-06-16 1 views
-2

Voici mon code:ne peut pas écrire dans un fichier txt en Python

import os 
os.chdir("C:\\Users\\satvi_000\\Downloads") 

if os.path.exists('new_file.txt')==False: 
    create_file= open("new_file.txt",'w') #This is just to create the file 
                #in case it doesn't exist 
    create_file.close() 
file= open('new_file.txt','r+') 

data= file.read() 

file.write("blah blah blah ") 

Je veux créer un fichier (si elle n'existe pas déjà) et d'écrire des données à lui. Je fais cela dans le cadre d'un programme plus vaste et je l'ai testé séparément pour voir quel était le problème et je n'arrive pas encore à le comprendre. J'écrirai à ce fichier encore et encore dans le plus grand programme, et le fichier sera également modifié chaque fois que le programme est exécuté. Qu'est-ce qui ne va pas ici?

+3

Vous n'avez pas besoin de comparer 'os.path.exists' à un booléen. Il renvoie déjà un booléen. Vous pouvez 'sinon os.path.exists (...)' à la place. –

+1

Quel est votre problème? – moritzg

+0

Fonctionne pour moi (si je change le nom du chdir) – cdarke

Répondre

1
import os 
os.chdir("C:\\Users\\satvi_000\\Downloads") 

if os.path.exists('new_file.txt')==False: 
    create_file= open("new_file.txt",'w') #This is just to create the file 
                #in case it doesn't exist 
    create_file.close() 
file= open('new_file.txt','r+') 

data= file.read() 

file.write("blah blah blah ") 
file.close() 
0

Essayez de fermer le fichier à la fin. file.close()