2

私はPythonに比較的慣れておらず、xml.domを使用してノードの子をループするのに問題があります。私はこれをしたい:

dom = parse("synth_options.xml")
root = dom.documentElement
child_nodes = root.childNode

for index, node in child_nodes:
    #do stuff with index and node

ただし、次のエラーが表示されます。

Traceback (most recent call last):
  File "synth.py", line 142, in <module>
    for index, node in child_nodes:
TypeError: iteration over non-sequence

奇妙なことに、これは機能します:

for node in child_nodes:
    #do stuff with index and node

役立つ場合はさらにコードを投稿できますが、他に関連するものはないと思います。前もって感謝します。

4

1 に答える 1

4

インデックスと値の両方を取得する場合は、次を使用できますenumerate

for index, node in enumerate(child_nodes):

enumerateリストのインデックスと値のタプルを返します。

使用例:

>>> l = ['a', 'b', 'c']
>>> for index, value in enumerate(l):
    print index, value


0 a
1 b
2 c

お役に立てれば!

于 2013-11-06T02:29:12.753 に答える