使用 XML 在 Python 中查找和提取数据
Finding and Extracting Data using XML in Python
You could work from the top of the XML down to the comments node and then loop through the child nodes of the comments node.
我确定这是我需要做的,但我不确定如何去做。
我有一个 XML 数据结构类似于:
<level>
<name>Matthias</name>
<age>23</age>
<gender>Male</gender>
</level>
...
我试图通过将数据提取到 Python 进行数据验证、处理和输出来向用户呈现姓名、年龄和角色性别。
如何从 Python 中的这些 XML 数据中仅提取玩家姓名?
假设 XML 可以有多个 <level>
元素,你想遍历并阅读细节,这是一种可能的方式:
from xml.etree import ElementTree as ET
source = '''<root>
<level>
<name>Matthias</name>
<age>23</age>
<gender>Male</gender>
</level>
<level>
<name>Foo</name>
<age>24</age>
<gender>Male</gender>
</level>
<level>
<name>Bar</name>
<age>25</age>
<gender>Male</gender>
</level>
</root>'''
root = ET.fromstring(source)
levels = root.findall('.//level')
for level in levels:
name = level.find('name').text
age = level.find('age').text
print name, age
输出:
Matthias 23
Foo 24
Bar 25
You could work from the top of the XML down to the comments node and then loop through the child nodes of the comments node.
我确定这是我需要做的,但我不确定如何去做。
我有一个 XML 数据结构类似于:
<level>
<name>Matthias</name>
<age>23</age>
<gender>Male</gender>
</level>
...
我试图通过将数据提取到 Python 进行数据验证、处理和输出来向用户呈现姓名、年龄和角色性别。
如何从 Python 中的这些 XML 数据中仅提取玩家姓名?
假设 XML 可以有多个 <level>
元素,你想遍历并阅读细节,这是一种可能的方式:
from xml.etree import ElementTree as ET
source = '''<root>
<level>
<name>Matthias</name>
<age>23</age>
<gender>Male</gender>
</level>
<level>
<name>Foo</name>
<age>24</age>
<gender>Male</gender>
</level>
<level>
<name>Bar</name>
<age>25</age>
<gender>Male</gender>
</level>
</root>'''
root = ET.fromstring(source)
levels = root.findall('.//level')
for level in levels:
name = level.find('name').text
age = level.find('age').text
print name, age
输出:
Matthias 23
Foo 24
Bar 25