You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何从Python3 xml.etree.Element获取仅一级深度的子元素列表?

获取xml.etree.Element对象的一级子元素方法

完全可以获取Element仅一级深度的子元素,最简单的方式是直接遍历Element对象本身——xml.etree.Element对象默认的迭代行为就是仅遍历自己的直接子元素,不会递归到更深层级。

实现代码

import xml.etree.ElementTree as ET
tree = ET.parse(PATH_TO_XML_FILE)
root = tree.getroot()

# 直接遍历root得到所有一级子元素
for child in root:
    print(child)

运行输出

<Element 'name' at 0x123abc>
<Element 'SomeLevel1Element' at 0x123bbc>
<Element 'SomeLevel1Element' at 0x123cbc>
<Element 'AnotherLevel1Element' at 0x123dbc>

补充说明

  • 如果需要将直接子元素转为列表保存,可使用:
    direct_children_of_root = list(root)
    
  • 无需使用findall()/find()方法:这类方法需要指定元素名称或XPath,而直接遍历无需提前知道子元素的数量和类型。
  • 避免使用iter()方法:该方法会递归遍历当前元素及所有后代元素,不符合仅获取一级子元素的需求。

内容的提问来源于stack exchange,提问作者superswellsam

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.12 08:45:36