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

使用Python解析ICD10 XML文件:如何获取inclusionTerm节点下的全部note元素内容

搞定ICD10 XML中获取所有inclusionTerm下note内容的问题

嘿,刚好碰到过类似的XML解析场景!你现在的代码只能拿到第一个<note>文本,是因为find('note')方法只会返回第一个匹配到的元素。要把<inclusionTerm>下的所有<note>内容都获取到,只需要换成findall()方法遍历所有匹配项就行,下面是具体的修改方案:

修改后的完整代码

from xml.etree import ElementTree as ET

root = ET.parse('cut.xml')
diag = root.find(".//*[name='A00.0']")
inclusionTerm = diag.find('inclusionTerm')

if inclusionTerm is not None:
    # 获取inclusionTerm下的所有note元素
    all_notes = inclusionTerm.findall('note')
    print('所有Inclusion Term内容:')
    for idx, note in enumerate(all_notes, 1):
        print(f'{idx}. {note.text}')

关键改动说明

  • 用inclusionTerm.findall('note')替代原来的find('note'):findall()会返回当前节点下所有符合条件的子元素,返回结果是一个可遍历的列表。
  • 遍历这个列表就能逐个取出每个<note>的文本内容,不管有多少个note都能全部获取到。

运行效果

执行这段代码后,你会得到如下输出:

所有Inclusion Term内容:
1. Classical cholera
2. Classical cholera again

这样就完美解决了只能获取第一个note的问题啦!

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.04.28 12:47:49