2015-12-12 3 views
0

Я использую код ...Запись в текстовых файлов в Python

C1 = open("Class 1.txt", "w") 
C1.write("\n\nName: %s" % S_N) 
C1.write("\nScore: %s" % correct) 
C1.close() 

Для записи в текстовый файл в Python, но каждый раз, когда я запускаю код он повторно устанавливает, что было в текстовом файле до. Например, этот код вводит чье-то имя и оценку, которую они получили в викторине. Когда я запускаю программу в первый раз, она отлично работает и сохраняет имя и оценку в текстовом файле, который я вижу позже. Но когда я запускаю код во второй раз, имя и оценка первого человека удаляются и заменяются счетом второго лица.

Ys там все равно изменить это ???

+1

Попробуйте использовать режим ** append **, установленный для режима ** write **, чтобы открыть файл: 'C1 = open (" Class 1.txt "," a ")' – ZdaR

ответ

0

Открытие файла w режим перезаписывает файл. То, что вы хотите использовать a, который добавляет к файлу:

C1 = open("Class 1.txt", 'a') 
C1.write("\n\nName: %s" % S_N) 
C1.write("\nScore: %s" % correct) 
C1.close() 

рассмотреть Кроме того, используя этот подход, когда чтение и запись файлов:

with open("Class 1.txt", 'a') as C1: 
    C1.write("\n\nName: %s" % S_N) 
    C1.write("\nScore: %s" % correct) 

Помогает, если вы когда-нибудь забыть close или ударить неперехваченное исключения.

Смежные вопросы