【发布时间】:2015-05-14 15:51:41
【问题描述】:
我正在尝试编写一个 Python 脚本,用于在 XML 输出中打印特定标记的值。在这里,我需要打印的标记值是 XML 输出中每次出现的值。我尝试如下,但它显示属性错误。这里有什么问题?获取和打印我有兴趣看到的某些更多标签的值的正确方法是什么?请问有什么帮助吗?谢谢。
import xml.etree.ElementTree as ET
mystring="""<?xml version="1.0" encoding="UTF-8"?>
<main>
<student>
<male>
<result>pass</result>
<name>Paul</name>
<address>boston</address>
<localreference>
<name>Charlie</name>
</localreference>
</male>
<female>
<result>pass</result>
<name>Rose</name>
<address>newyork</address>
<localreference>
<name>Charlie</name>
</localreference>
</female>
</student>
<student>
<male>
<result>fail</result>
<name>Philippe</name>
<address>boston</address>
<localreference>
<name>White</name>
</localreference>
</male>
</student>
</main>"""
main = ET.fromstring(mystring)
for student in main:
if (student.tag == "student"):
print student.find("male/result").text
print student.find("female/result").text
错误>
# python new5.py
pass
pass
fail
Traceback (most recent call last):
File "new5.py", line 39, in <module>
print student.find("female/result").text
AttributeError: 'NoneType' object has no attribute 'text'
【问题讨论】:
标签: python xml elementtree