Python ElementTree:x27的语法是什么;匹配';对';查找';方法?

Python ElementTree:x27的语法是什么;匹配';对';查找';方法?,python,lxml,elementtree,Python,Lxml,Elementtree,官方文档只是说,“匹配可能是一个标记名或路径”,但我在任何地方都看不到“路径”的定义。通过查看web上的示例,我收集到一些类似XPath的简化表示法,但不清楚到底允许使用什么-例如,路径应该以/、/开头,还是根本没有分隔符?我可以用[@att=“value”]指定属性吗?好吧,看看源代码,我们发现元素。find实现为 def find(self, path, namespaces=None): return ElementPath.find(self, path, namespaces)

官方文档只是说,“匹配可能是一个标记名或路径”,但我在任何地方都看不到“路径”的定义。通过查看web上的示例,我收集到一些类似XPath的简化表示法,但不清楚到底允许使用什么-例如,路径应该以
/
/
开头,还是根本没有分隔符?我可以用
[@att=“value”]
指定属性吗?

好吧,看看源代码,我们发现
元素。find
实现为

def find(self, path, namespaces=None):
    return ElementPath.find(self, path, namespaces)
try:
    from . import ElementPath
except ImportError:
    ElementPath = _SimpleElementPath()
ElementPath
实现为

def find(self, path, namespaces=None):
    return ElementPath.find(self, path, namespaces)
try:
    from . import ElementPath
except ImportError:
    ElementPath = _SimpleElementPath()
\u SimpleElementPath
仅检查标记名:

# emulate pre-1.2 find/findtext/findall behaviour
def find(self, element, tag, namespaces=None):
    for elem in element:
        if elem.tag == tag:
            return elem
    return None
让我们看看ElementPath.py:它表示

# limited xpath support for element trees
因此,我假设validxpath可能是
find
的有效参数。我对XPath不太熟悉,无法确定它到底支持什么,但描述了五年前它支持了多少,并包括一个语法表

ElementTree对XPath表达式提供了有限的支持。目标是支持缩写语法的一小部分;完整的XPath引擎不在核心库的范围内

有一个更新更多的表。看起来没什么不同