2016-08-20 1 views
0

Ich benutze Python 3.Schreibe Liste in Datei - Datei geschrieben, nicht gefunden

Dies ist ein Skript, das ich gerade schreibe. Es fragt nach einem Namen/Geburtstag, nimmt diese Eingabe und fügt sie in eine Liste ein. Die Liste wird dann in eine andere Datei geschrieben.

Ich habe Forschung darüber getan und kann nicht finden, warum es nicht funktioniert.

Hier ist mein Code:

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) 

ZWEITE EDIT: Ich habe Code (am weitesten unten für Schleife und die Datei erstellen). Es hat funktioniert, aber ich kann die Datei nirgends finden. Irgendeine Hilfe? Wie kann ich es finden und öffnen? Writing a list to a file with Python

+0

Sie fehlen die Klammern für Ihren Funktionsaufruf an(). Nach dem Hinzufügen dieser Klammern funktioniert der Code gut für mich. – Dartmouth

+0

Dartmouth bedeutet den "oberen" Funktionsaufruf. – martineau

Antwort

0

Diese Zeile:

birthday = input("> ").upper 

Sollte sein:

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

Erstere weist die upper Funktion auf die Variable birthday anstatt die Groß der Eingabezeichenfolge Dieser Code bei gefunden wurde .

+0

Das hat funktioniert, Danke! Eine weitere Frage hinzugefügt. Hast du eine Idee dafür? –

+0

Kein Problem. Es wird nur die Datei schreiben, sobald die Hauptschleife beendet ist, nachdem Sie eine leere Zeile eingegeben haben. – FujiApple

+0

Wahrscheinlich am besten, diese Antwort zu akzeptieren und zusätzliche Fragen als neue Frage zu stellen. – FujiApple