Wörterbuch

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
MrWasabi
User
Beiträge: 3
Registriert: Sonntag 17. Januar 2016, 13:00

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)
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.
Benutzeravatar
miracle173
User
Beiträge: 127
Registriert: Samstag 6. Februar 2016, 00:28

Key/Value Paare können in shelves abgelegt werden, also in einem dbm-File. Bei Python 3 gibt es da allerdings einige Ungereimtheiten
Antworten