Sto analizzando un file XML tramite Element Tree in python e scrivendo il contenuto in un file cpp.Come posso verificare l'esistenza di attributi e tag in XML prima dell'analisi?
Il contenuto di tag per bambini sarà una variante per tag diversi. Ad esempio, il primo tag evento ha tag di parte come figlio ma il secondo tag evento non ha.
-> Come posso verificare se un tag esiste o meno prima dell'analisi?
-> I bambini hanno attributo valore nel primo tag evento ma non in secondo. Come posso verificare se un attributo esiste o meno prima di prenderne il valore.
-> Attualmente il mio codice genera un errore per il tag di parte non esistente e imposta un valore di attributo "Nessuno" per il secondo tag figlio.
<main>
<event>
<party>Big</party>
<children type="me" value="3"/>
</event>
<event>
<children type="me"/>
</event>
</main>
Codice:
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')
voglio controllare i tag e poi prendere i loro valori.
@Martjin Pieters Lei ha parlato di se partito è None: Come faccio a scrivere in Python, se Vorrei scrivere qualcosa come - If party! = None: – Abhishek
@Abhishek: 'se party non è None'. Vedi [operatori di confronto python] (http://docs.python.org/2/reference/expressions.html#not-in). –
Grazie anche per aver menzionato come verificare gli attributi. Ottima risposta. – SSchneid