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

如何用Python ElementTree实现父标签内嵌文本与子标签的混合结构?

解决ElementTree父标签内子元素前后添加文本的问题

在xml.etree.ElementTree中,元素的text属性对应该元素第一个子节点之前的文本,而子元素的tail属性对应该子元素之后的文本。你之前的错误是重新赋值b1.text覆盖了前导文本,同时没利用tail属性设置尾随文本。

正确代码示例

import xml.etree.ElementTree as ET

root = ET.Element("root")

b1 = ET.SubElement(root, "parent")
# 设置父元素第一个子节点前的文本
b1.text = "Make from "
b2 = ET.SubElement(b1, "child")
b2.text = "12345678"
# 设置子元素之后的尾随文本
b2.tail = " this part"

tree = ET.ElementTree(root)

# 打印验证结果
ET.dump(tree)

运行结果

执行后会生成你需要的XML结构:

<root>
    <parent>Make from <child>12345678</child> this part</parent>
</root>

补充说明

如果父元素包含多个子元素,每个子元素的tail属性都可以独立设置它后面的文本,以此实现更复杂的文本与标签混合结构。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.25 00:39:17