在python中解析XML真的很难看吗?

hor*_*nic 0 python minidom

我有一个非常小的XML文件(22行)和5个元素(?),我只想要一个值.

这是我可以在不使用正则表达式的情况下获得我找到的值的唯一方法

from xml.dom.minidom import parse
float(parse(filePath).getElementsByTagName('InfoType')[0].getElementsByTagName('SpecificInfo')[0].firstChild.data)
Run Code Online (Sandbox Code Playgroud)

我觉得我错过了什么.必须有一种更加pythonic的方式来处理XML,对吧?

rmu*_*unn 11

ElementTree的库是一个很多比xml.dom.minidom更Python.如果我正确理解您的XML结构,那么您的代码将使用ElementTree看起来像这样:

import xml.etree.ElementTree as ET
tree = ET.parse(filePath)
data = float(tree.find('InfoType/SpecificInfo')[0].text)
Run Code Online (Sandbox Code Playgroud)

这应该比你现在做的要干净得多.