1
我需要一些非常簡單的XML輸出,所以我決定編寫自己的函數。這只是第一步,但有些事情發生了嚴重的錯誤。雖然我期望輸出看起來像這樣:Python輸出無序
<A>
<D>
<I></I>
<J></J>
<K></K>
</D>
<E>
<I></I>
<J></J>
<K></K>
</E>
...等等。
而是輸出看起來是這樣的:
<I></I>
<J></J>
<K></K>
<D>
</D>
<E>
</E>
<F>
</F>
<G>
</G>
<H>
</H>
<A>
</A>
<B>
</B>
<C>
</C>
我敢肯定,我的錯誤是很簡單的東西,但我無法看到它。這是我正在使用的整個文件:
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)))
正如你所看到的,這兩個函數都應該打印標籤。 XMLParent應該允許傳遞一個子函數,或者是另一個父類或者子類。無論我看到多少,我都無法弄清楚爲什麼它的打印方式如此。
啊,我明白了。我認爲這也將使我的下一步,更容易地將其修改爲打印到文件。非常感謝。 – xnine 2010-06-20 06:51:38