In Json Knoten erweitern durch Python
Verfasst: Samstag 6. Juni 2015, 17:55
Hallo,
ich hab das Problem, dass ich in meinem gespeicherten Json Datei nicht wie gewollt ein Knotenpunkt hinzufügen kann.
also mein Json sieht zurzeit so aus:
{
"Arbeitplan1": {
"1": { <-- (soll mein Knoten Nummer sein)
"Bezeichnung": "asd",
"Methode": "asd"
}
}
}
bist jetzt sollte es auch so abspeichern. Aber wenn ich nun noch ein Knotenpunkt dranhängen möchte unter meinem Arbeitplan1, dann wirds überschrieben.
sollte z.b nach weiteren Knotenpunkt Ergänzungen so aussehen:
{
"Arbeitplan1": {
"1": {
"Bezeichnung": "aaa",
"Methode": "sss"
},
"2": {
"Bezeichnung": "eee",
"Methode": "fff"
}
}
}
Mein python hinzufügen methode sieht so aus:
ich hoffe ihr habt mich verstanden ich weiß schon garnicht mehr wie lange ich dran sitze.
ich habe diverse anderen sachen versucht hab es nicht hinbekommen.
Habe es auch mit append versucht aber leider...
ich hab das Problem, dass ich in meinem gespeicherten Json Datei nicht wie gewollt ein Knotenpunkt hinzufügen kann.
also mein Json sieht zurzeit so aus:
{
"Arbeitplan1": {
"1": { <-- (soll mein Knoten Nummer sein)
"Bezeichnung": "asd",
"Methode": "asd"
}
}
}
bist jetzt sollte es auch so abspeichern. Aber wenn ich nun noch ein Knotenpunkt dranhängen möchte unter meinem Arbeitplan1, dann wirds überschrieben.
sollte z.b nach weiteren Knotenpunkt Ergänzungen so aussehen:
{
"Arbeitplan1": {
"1": {
"Bezeichnung": "aaa",
"Methode": "sss"
},
"2": {
"Bezeichnung": "eee",
"Methode": "fff"
}
}
}
Mein python hinzufügen methode sieht so aus:
Code: Alles auswählen
def add(self, arbeitsplan1, eingabetext1, eingabetext2, counter):
data_o=open("./data/arbeitsvorgang.json","r")
liste_a=json.load(data_o)
data_o.close()
arbeitsplan = arbeitsplan1
neu ={arbeitsplan:{
counter:{
"Bezeichnung":eingabetext1,
"Methode": eingabetext2
}
}
}
liste_a.update(neu)
data_o = open("./data/arbeitsvorgang.json","w")
json.dump(liste_a, data_o, indent = 2, sort_keys = True)
data_o.close()
add.exposed = True
ich habe diverse anderen sachen versucht hab es nicht hinbekommen.
Habe es auch mit append versucht aber leider...
Code: Alles auswählen
data_o = open("./data/arbeitsvorgang.json","a") <--
json.dump(liste_a, data_o, indent = 2, sort_keys = True)
data_o.close()