Ich habe ein einfaches Programm, das Eingaben vom Benutzer nimmt und sie in ein Diktat schreibt. Nachdem dann möchte ich, dass die Daten in JSON-Datei speichern (Ich suchte und nur json nützlich gefunden)Daten eines Diktats in JSON speichern
zum Beispiel
mydict = {}
while True:
user = input("Enter key: ")
if user in mydict.keys(): #if the key already exist only print
print ("{} ---> {}".format(user,mydict[user]))
continue
mn = input("Enter value: ")
app = input ("Apply?: ")
if app == "y":
mydict[user] = mn
with open ("mydict.json","a+") as f:
json.dump(mydict,f)
with open ("mydict.json") as t:
mydict = json.load(t)
Jedes Mal Benutzer einen Schlüssel und Wert eingeben, möchte ich sie in dict hinzuzufügen, Danach speichern Sie das Diktat in der JSON-Datei. Und jedes Mal, wenn ich diese JSON-Datei lesen möchte, kann ich das Diktat im Programm aktualisieren.
Die oben genannten Codes wurden erhöht ValueError: Extra data:
. Ich habe verstanden, dass ein Fehler aufgetreten ist, weil ich jedes Mal das Dict zur JSON-Datei hinzufüge, so dass es mehr als ein Diktat gibt. Aber wie kann ich das ganze dict auf einmal hinzufügen? Ich wollte den w
Modus nicht verwenden, weil ich die Datei nicht überschreiben möchte und ich neu in Json bin.
Programm muss unendlich sein und ich muss das Diktat jedes Mal aktualisieren, deshalb konnte ich keine Lösung finden oder irgendetwas versuchen, da ich neu bei Json bin.
Sie * sollten * die Datei überschreiben wollen, da das JSON-Dateiformat das Anhängen nicht zulässt. –
@SteveJessop Also muss ich einfach 'w' Modus verwenden – GLHF
Schreiben Sie einfach' if user in mydict: ' –