Erstellen Sie einen JSON-Baum aus der CSV-Liste in Python

Ich versuche, eine JSON-Hierarchie aus einer einfachen Tabelle in Python zu erstellen.

Die Daten sehen folgendermaßen aus:

id         parent          name
1          10              test-name-1
2          10              test-name-2
3          5               test-name-3
4          none            test-name-4
5          10              test-name-5
6          none            test-name-6
7          1               test-name-7
8          1               test-name-8
9          8               test-name-9
10         4               test-name-10

und ich suche eine Ausgabe wie diese:

{"$4":{"name":"test-name-4","children":{
      "$10":{"name":"test-name-10","children":{
            "$1":{"name":"test-name-1","children":{
                 "$7":{"name":"test-name-7","children":{}},
                 "$8":{"name":"test-name-8","children":{
                      "$9":{"name":"test-name-9","children":{}}}}}},
            "$2":{"name":"test-name-2","children":{}},
            "$5":{"name":"test-name-5","children":{
                 "$3":{"name":"test-name-3","children":{}}}}}}}},
 "$6":{"name":"test-name-6","children":"test-name-6"}}

Ich habe keine Ahnung, wie viele "Blätter" es gibt oder "Wurzeln" oder in welcher Reihenfolge die Zeilen aus der CSV kommen. Meine Frage ist, gibt es eine Möglichkeit, ein Wörterbuch / eine Liste aus einem untergeordneten Knoten rekursiv zu erstellen bis zu den Eltern? Wie kann ich einen hierarchischen Baum aus den "Blatt" -Stücken des Baums in Python erstellen?

Danke für die Hilfe!

Antworten auf die Frage(3)

Ihre Antwort auf die Frage