etree.ElementTree添加带有特殊字符的标签属性

问题描述 投票:0回答:1

我想生成具有属性xsi:noNamespaceSchemaLocation的Element。

<Test name="Name" xsi:noNamespaceSchemaLocation="anyURI"></a>

我的python代码

import xml.etree.ElementTree as xml
root = xml.Element('Tests', xsi:noNamespaceSchemaLocation="anyURI")

[当我尝试运行python文件时。出现错误

文件“ ... / xml-generator.py”,第4行root = xml.Element('Tests',xsi:noNamespaceSchemaLocation =“ anyURI”)^ SyntaxError:语法无效

xml python-3.x xml-parsing
1个回答
1
投票

您可以稍后通过Element.set设置属性:

root = xml.Element("Tests")
root.set("xsi:noNamespaceSchemaLocation", "anyURI")

或者您可以先将Element的kwarg打包到字典中,然后再使用**运算符直接将其打包:

root = xml.Element("Tests", **{"xsi:noNamespaceSchemaLocation" : "anyURI"})
© www.soinside.com 2019 - 2024. All rights reserved.