Adressbuch - neues Projekt
Verfasst: Montag 24. August 2009, 14:37
Also ich habe jetzt damit begonnen ein Adressbuch zu programmieren. Damit ich nicht für jedes Problem n extra Thema aufmachen muss will ich meine Fragen hier mit der zeit loswerden und hoffe dass ich viel davon lernen kann. Wäre sehr nett wenn ihr mich bei meinen Problemen unterstützen könntet! Danke!
Nun zu meinem ersten Problem:
Der Eintrag eines neuen Kontakts:
Hier werden die Daten aus den Entrys ausgelesen und als Dictionary in einer pickle-Datei gespeichert.
Wenn ich mir die Datei allerdings nach dem Speichern anschaue sieht dies so aus:
Meine Frage dazu: Warum ist der Nachname auf einmal vor den Vornamen?!
Sie wurde doch anders herrum gespeichert.
Zu meiner zweiten Frage:
Wenn ich mehrere Personen speichere und diese wieder als Dictionary auslesen und anzeigen will, dann zeigt er nur den ersten gespeicherten Eintrag an. Wie bekommt man es hin dass alle in das selbe Dictionary gespeichert werden um damit wieder arbeiten zu können?
Der Code dazu:
Hoffe ihr könnt mir helfen, schonmal vielen Dank
[/quote]
Nun zu meinem ersten Problem:
Der Eintrag eines neuen Kontakts:
Code: Alles auswählen
def entry():
vorname = entry2.get()
nachname = entry3.get()
telefon = entry4.get()
dictionary = {"Vorname":vorname, "Nachname":nachname, "Telefon":telefon}
daten = open("daten.pickle", "a")
pickle.dump(dictionary, daten)
daten.close()
Wenn ich mir die Datei allerdings nach dem Speichern anschaue sieht dies so aus:
Code: Alles auswählen
(dp0
S'Nachname'
p1
S'Zander'
p2
sS'Vorname'
p3
S'Peter'
p4
sS'Telefon'
p5
S'08575/348576'
p6
s.
Sie wurde doch anders herrum gespeichert.
Zu meiner zweiten Frage:
Wenn ich mehrere Personen speichere und diese wieder als Dictionary auslesen und anzeigen will, dann zeigt er nur den ersten gespeicherten Eintrag an. Wie bekommt man es hin dass alle in das selbe Dictionary gespeichert werden um damit wieder arbeiten zu können?
Der Code dazu:
Code: Alles auswählen
def search():
daten2 = open("daten.pickle", "r")
dictionary2 = pickle.load(daten2)
daten2.close()
print dictionary2
