Alles sicherlich noch nicht. Sonst würde ich nicht glauben dass hier vllt. jemand die Lösung kennt
Ich will unterschiedliche Informationen. Die bitoffs, bitsizes und jeweils die Werte in range und scale.
und wie Du genau dieses <datafield> als dasjenige welche identifiziert hast aus dem Du etwas haben willst
Die Frage versteh ich nicht ganz. Falls sie jedoch darauf abzielt, dass ich attributes verwenden sollte, dann muss ich leider sagen, dass ich auf die XML keinen Einfluss habe. Ich lese sie in genau der Form aus.
Versucht habe ich bisher über den Index ranzukommen. Also z.B.
Das funktioniert zwar auch super. Aber sobald die XML wechselt verändert sich leider auch die Strukur vom Tree. Die Elemente bleiben jedoch die selben. Daher funktioniert diese Lösung nur statisch für eine XML. Daher suche sich ewas flexibleres.
Code: Alles auswählen
for a in root.findall('profile/rorg/func/type/case/datafield/data'):
print(a.text)
Ich habe auch schon über findall versucht. Aber wie der Name schon sagt, findet er dann alle data im gesamten Dokument. Da es ja mehrere datafields gibt.
Die bisher aufwendigste Lösung war, dass ich die XML in ein Dictionary umgewandelt habe um dann anschließend über die Elemente versucht hab durchzugehen.
Code: Alles auswählen
print(xmldict['profile']['rorg']['func']['type']['case']['datafield'])
Das funktioniert bis datafield auch ganz gut. Aber sobald dann mehrere Datafields des gleichen Namens kommen sprengt es diese Methode ebenfalls =(