2016-08-20 6 views
0

Я использую Python 3.Запись списка в файл - Файл написан для не найден

Это скрипт, который я нахожу в процессе написания. Он запрашивает имя/день рождения, принимает этот ввод и добавляет его в список. Затем список записывается в другой файл.

Я сделал исследование по этому вопросу и не могу найти, почему он не работает.

Вот мой код:

print("""Enter the name and birthday of the person like this: 
Adam 1/29 
""") 

all_birthdays = [ "none so far" ] 

while True: 
    birthday = input("> ").upper() 

    if birthday == "": 
     break 

    if birthday == "LIST": 
     print(all_birthdays) 

    if birthday not in all_birthdays: 
     all_birthdays.append(birthday) 
    else: 
     print("This name/birthday is already known") 

birthday_list = open('test.txt','w') 

for bday in all_birthdays 
    birthday_list.write("%s\n" %bday) 

ВТОРОЙ EDIT: Я добавил код (самый нижний цикл и создать файл). Это сработало, но я не могу даже найти файл в любом месте. Любая помощь? Как я могу найти его и открыть? Этот код был найден: Writing a list to a file with Python

+0

Вам не хватает скобок для вызова функции функции(). После добавления этих скобок код работает отлично для меня. – Dartmouth

+0

Dartmouth означает вызов функции 'upper'. – martineau

ответ

0

Эта линия:

birthday = input("> ").upper 

Должно быть:

birthday = input("> ").upper() 

Бывший присваивает upper функцию переменной birthday, а не прописные входной строки ,

+0

Это сработало, спасибо! Добавлен еще один вопрос. У вас есть идея для этого? –

+0

Нет проблем. Он будет записывать файл только после выхода основного цикла после ввода пустой строки. – FujiApple

+0

Наверное, лучше всего принять этот ответ и задать дополнительные вопросы в качестве нового вопроса. – FujiApple