python中xml.etree.ElementTree的findall会解析下一级吗
时间: 2024-02-01 11:03:47 浏览: 21
`findall()`方法会查找当前元素的所有子元素中符合条件的元素,包括下一级、下下级等。如果要查找下一级的元素,可以在标签名称前加上点号`.`。例如,以下代码将查找所有`book`元素下名为`author`的子元素:
```python
import xml.etree.ElementTree as ET
tree = ET.parse('books.xml')
root = tree.getroot()
authors = root.findall("./book/author")
for author in authors:
print(author.text)
```
这里使用了XPath表达式`"./book/author"`,其中点号表示从当前元素开始查找,`book`表示当前元素的子元素中查找名为`book`的元素,`author`表示`book`元素的子元素中查找名为`author`的元素。以上代码将输出所有`book`元素下的`author`元素的文本内容。