2011-01-17 11 views
-2
 if data.find('!add') != -1: 
     f = open('masters.txt', 'w') 
     f.writelines(args, '\n') 
     sck.send('PRIVMSG ' + chan + ' :' + ' added' + " " + args + '\r\n') 
     f.close() 

Lorsque j'utilise ce code, il remplace les anciennes données par les nouvelles données, comment puis-je faire en sorte que les nouvelles données ne remplacent pas les anciennes données, mais se termine à la fin de la fichier.Écrire dans un fichier (python)

+3

mode « w » écrasera tout. 'a' APPEND. profiter :) – tekknolagi

+4

RTFM? http://docs.python.org/tutorial/inputoutput.html, section 7.2. –

Répondre

7

utilisation

f = open('masters.txt', 'a') 

au lieu

EDIT: voir here

5

f = open('masters.txt', 'a')

0

Ouverture du fichier en mode 'w' efface tout et écrit puis de nouvelles choses. Je l'ai appris à la dure;)

Quoi qu'il en soit, vous devez l'ouvrir dans « un » mode (ajouter), qui ressemblerait à ceci:

f = open("masters.txt", 'a') 
f.writelines(args, "\n") 
f.close() 
Questions connexes