编辑:
谢谢你们,我完全忘记了 for 语句末尾的 : 。此外,对于带有空格的原始标签,我只是将其用作填充文本!实际名称确实有 aword_anotherword 作为元素标签
现在,如果我有这样的事情,
<TIER name="a">
<tier_1>
<tier_2>
<tier_3> a1</tier_3>
</tier_2>
</tier_1>
<tier_1>
<tier_2>
<tier_3> a2</tier_3>
</tier_2>
</tier_1>
<tier_1>
<tier_2>
<tier_3> a3</tier_3>
</tier_2>
</tier_1>
</TIER>
<TIER name="b">
<tier_1>
<tier_2>
<tier_3> b1</tier_3>
</tier_2>
</tier_1>
<tier_1>
<tier_2>
<tier_3> b2</tier_3>
</tier_2>
</tier_1>
<tier_1>
<tier_2>
<tier_3> b3</tier_3>
</tier_2>
</tier_1>
</TIER>
我将如何使用 name="a" 仅从第一层打印 tier_3 ?
我有一个类似这样的 xml 表
<ALL TIERS>
<tier 1>
<tier 2>
<tier 3> Hello one!</tier3>
</tier 2>
</tier 1>
<tier 1>
<tier 2>
<tier 3> Hello two!</tier3>
</tier 2>
</tier 1>
<tier 1>
<tier 2>
<tier 3> Hello three!</tier3>
</tier 2>
</tier 1>
</ALL TIERS>
我想使用 python 打印第 3 层的文本节点值,所以结果是这样的
你好一个!两位好!你好三!
我写了这个:
from xml.dom import minidom
xmldoc = minidom.parse(sys.argv[1])
xlist = xmldoc.getElementsByTagName('tier 3')
for i in xlist
print " ".join(t.nodeValue for t in i.childNodes if t.nodeType==t.TEXT_NODE)
但这给了我一个指向“for i in xlist”的无效语法错误
有人可以帮我纠正这个吗?谢谢!