伊特丽克隆点头

2024-04-26 01:33:35 发布

您现在位置:Python中文网/ 问答频道 /正文

如何在Python中克隆Element对象xml.etree?我正在尝试按程序移动和复制(然后修改它们的属性)节点。


Tags: 对象属性节点xmlelementetree
3条回答

您可以使用copy.deepcopy()复制元素。(顺便说一下,这也适用于lxml)。

另一个不同的、有点令人不安的解决方案:

new_element = lxml.etree.fromstring(lxml.etree.tostring(elem))

至少在Python2.7中,etree元素有一个copy方法: http://hg.python.org/cpython/file/2.7/Lib/xml/etree/ElementTree.py#l233

这是一个肤浅的复制品,但在某些情况下这是可取的。

在我的例子中,我复制了一些SVG元素并添加了一个转换。复制子对象没有任何用处,因为在相关的地方,它们已经继承了父对象的转换。

相关问题 更多 >