将'xml:space'设置为'保留'Python lxml

时间:2013-07-04 19:02:18

标签: python xml svg lxml

我在SVG文件中有一个文本元素,我使用lxml生成。我想保留这个元素中的空格。我创建了文本元素,然后尝试.set() xml:spacepreserve,但我尝试的任何内容似乎都无效。我可能在概念上遗漏了一些东西。有什么想法吗?

1 个答案:

答案 0 :(得分:7)

您可以通过显式指定与特殊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"/>