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

如何使用Python的xml.etree.ElementTree将XML子元素标签名以逗号分隔格式单行输出

解决XML子元素标签名单行输出的问题

嘿,我来帮你搞定这个需求!你当前的代码会逐行打印标签名,是因为每次调用print()都会自动添加换行符。要实现逗号分隔的单行输出,咱们只需要先把所有目标标签名收集到一个列表中,再用逗号把它们拼接成一个字符串后一次性打印即可。

修改后的代码如下:

import xml.etree.ElementTree as ET
data = ''' <job_details> <role> <name>Vikas</name> <salary>$5.95</salary> <job_description>Developer</job_description> </role> <role> <name>Dip</name> <salary>$7.95</salary> <job_description>Backend Developer</job_description> </role> </job_details> '''
xml_parsing = ET.fromstring(data)
# 收集第一个<role>节点下所有子元素的标签名到列表
tag_list = [sub.tag for sub in xml_parsing[0]]
# 用逗号拼接列表元素并打印单行结果
print(','.join(tag_list))

代码说明:

  • 用列表推导式[sub.tag for sub in xml_parsing[0]]快速收集第一个<role>下所有子元素的标签名,避免逐行打印的问题。
  • 用字符串的join()方法,把列表中的标签名用逗号连接成一个完整的字符串,最后打印就能得到你想要的name,salary,job_description单行结果。

如果你的XML中所有<role>节点的子元素结构都一致,那么只取第一个<role>的子元素标签名就足够啦~

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.04.28 20:14:06