xml 在这里非常新手。
我有一个 xml 文件,这个表单非常大:
<a>
<b>
<id>1</id>
...
</b>
<b>
<id>2</id>
...
</b>
<b>
<id>3</id>
...
</b>
<b>
<id>4</id>
...
</b>
</a>
其中b
有一些我想检索的信息,我正在尝试遵循 python 帮助文档。我从这个开始:
#!/usr/bin/env python
import xml.etree.ElementTree as ET
tree = ET.parse('data.xml')
root = tree.getroot()
print 'root.tag = ', root.tag
print 'root.attrib = ', root.attrib
但是因为我的文件很大,所以这部分需要几分钟。
我想做的是这样的:
for node in (n for n in nodes if n.id in ['1', '3']):
print node.val1
print node.val2
(无需处理所有与我想要的 id 不匹配的节点)。
有没有办法做到这一点?