Seite 1 von 1

Wörterbuch

Verfasst: Dienstag 23. Februar 2016, 19:51
von MrWasabi
Ich habe neulich angefangen mit Python zu programmiern, jetzt habe ich aber schon ein Problem mit meinem Wörterbuch. Es soll falls es ein Wort noch nicht kennt die eingegebene Übersetztung einspeichern, allerdings speichert es diese nur solange das Programm offen ist. Meine Frage ist ob es einen Weg gibt die eingegebene Übersetzung dauerhaft einzuspeichern, sodass bei erneutem starten das neue Wort abgefragt werden kann.

Code: Alles auswählen

de_en = {"rot":"red", "blau":"blue"}

Wort = input("Was wollen sie wissen?")

if Wort in de_en:
	print(de_en[Wort])
else:
	Übersetzung = input("Tut mir leid das wort kenne ich noch nicht. Wollen sie die Übersetzung eingeben?")
	if Übersetzung = "nein"
		print("ok")
	else:
		de_en[Wort] = Übersetzung

print(de_en)

Re: Wörterbuch

Verfasst: Dienstag 23. Februar 2016, 20:16
von BlackJack
@MrWasabi: Du müsstest die Daten am Anfang aus einer Datei laden und wenn sie geändert wurden, spätestens am Ende des Programms wieder in die Datei speichern. Für ein Wörterbuch mit Zeichenketten als Schlüssel und Werte kannst Du Dir das `json`-Modul ansehen.

Eine eingegebene Übersetzung auch gleichzeitig auf ein Wort für den Abbruch zu prüfen ist keine gute Idee, denn dann gibt es ein Wort das man nicht als Übersetzung für irgendetwas verwenden kann. Eine leere Eingabe wäre da sinvoller als Abbruchkriterium.

Re: Wörterbuch

Verfasst: Dienstag 23. Februar 2016, 23:31
von miracle173
Key/Value Paare können in shelves abgelegt werden, also in einem dbm-File. Bei Python 3 gibt es da allerdings einige Ungereimtheiten