Wie kann ich die Existenz von Attributen und Tags in XML überprüfen, bevor ich sie analysiere?

Ich analysiere eine XML-Datei über Element Tree in Python und schreibe den Inhalt in eine CPP-Datei.

Der Inhalt der untergeordneten Tags wird für verschiedene Tags unterschiedlich sein. Zum Beispiel hat das erste Ereignis-Tag ein Party-Tag als Kind, das zweite Ereignis-Tag jedoch nicht.

-> Wie kann ich vor dem Parsen prüfen, ob ein Tag existiert oder nicht?

-> Children hat das Wertattribut im 1. Ereignistag, aber nicht im zweiten. Wie kann ich überprüfen, ob ein Attribut existiert oder nicht, bevor ich seinen Wert nehme?

-> Derzeit gibt mein Code einen Fehler für ein nicht vorhandenes Party-Tag aus und setzt einen Attributwert "None" für das zweite Kind-Tag.

<main>
  <event>
    <party>Big</party>
    <children type="me" value="3"/>
  </event>

  <event>
    <children type="me"/>
  </event>

</main>

Code:

import xml.etree.ElementTree as ET
tree = ET.parse('party.xml')
root = tree.getroot()
for event in root.findall('event'):
    parties = event.find('party').text
    children = event.get('value')

Ich möchte die Tags überprüfen und dann ihre Werte übernehmen.

Antworten auf die Frage(1)

Ihre Antwort auf die Frage