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

如何为xml.etree ElementTree的属性设置命名空间?

问题:ElementTree中为属性添加命名空间以生成指定XML

想要生成的XML结果:

<test xmlns:ns="test"><test1 ns:name="item1" /></test>

已完成命名空间注册,需修改以下代码:

test1 = ET.SubElement(test, "test1", name="item1")

解决方案

修改属性参数的写法,使用命名空间URI包裹属性名的格式作为键:

test1 = ET.SubElement(test, "test1", {"{test}name": "item1"})

说明

由于你已经通过ET.register_namespace('ns', 'test')完成了ns前缀与test命名空间URI的映射注册,ElementTree在序列化XML时,会自动将{test}name转换为你指定的前缀形式ns:name,最终生成符合要求的XML结构。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.02 19:43:09