将“xml:space”设置为“preserve”的Python lxml

7

我正在使用 lxml 生成一个SVG文件中的文本元素。我希望保留这个元素中的空格。我已经创建了文本元素,然后尝试用 .set() 方法将 xml:space 设置为 preserve,但是似乎没有起作用。我可能在概念上漏掉了什么东西。你有什么想法吗?

1个回答

8

您可以通过明确指定与特殊的xml:前缀关联的命名空间URI(请参见http://www.w3.org/XML/1998/namespace)来实现。

from lxml import etree

root = etree.Element("root")
root.set("{http://www.w3.org/XML/1998/namespace}space", "preserve")

print etree.tostring(root)

输出:

<root xml:space="preserve"/>    

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接