J'avais besoin d'une sortie XML très simple, j'ai donc décidé d'écrire mes propres fonctions. Ce n'était que le premier pas, mais quelque chose a vraiment mal tourné. Alors que je m'attendrais à ce que la sortie ressemble à ceci:Sortie Python en panne
<A>
<D>
<I></I>
<J></J>
<K></K>
</D>
<E>
<I></I>
<J></J>
<K></K>
</E>
... et ainsi de suite.
lieu la sortie ressemble à ceci:
<I></I>
<J></J>
<K></K>
<D>
</D>
<E>
</E>
<F>
</F>
<G>
</G>
<H>
</H>
<A>
</A>
<B>
</B>
<C>
</C>
Je suis sûr que mon erreur est quelque chose de très simple, mais je ne peux pas le voir. C'est le fichier entier que j'utilise:
def XMLChild(list, depth):
for arg in list:
print '\t' * depth + '<' + arg + '></' + arg + '>'
def XMLParent(list, depth, child):
for arg in list:
print '\t' * depth + '<' + arg + '>'
child
print '\t' * depth + '</' + arg + '>'
list1 = ['A', 'B', 'C']
list2 = ['D', 'E', 'F', 'G', 'H']
list3 = ['I', 'J', 'K', ]
XMLParent(list1, 0, XMLParent(list2, 1, XMLChild(list3, 2)))
Comme vous pouvez le voir, les deux fonctions sont supposées imprimer des étiquettes. XMLParent devrait permettre le passage d'une fonction enfant, soit un autre parent, soit un enfant. Peu importe combien je le regarde, je n'arrive pas à comprendre pourquoi il imprime comme il est.
Ah, je comprends. Je pense que cela fera également ma prochaine étape, pour le modifier pour imprimer dans un fichier, plus facile. Merci beaucoup. – xnine