如何使用check in lxml添加元素。 我在python(2.7)中使用lxml(4.1.1)创建了一个xml。
我面临的问题是在xml中添加了重复元素。 例如 -
<parent>
<child>text1</child>
<child>text2</child>
</parent>
child = <child>text3</child>
dup_child = <child>text3</child>
所以我想要的是
之后parent.append_child_with_check(child)
xml应该成为
<parent>
<child>text1</child>
<child>text2</child>
<child>text3</child>
</parent>
之后
parent.append_child_with_check(dup_child)
Xml应该与我尝试添加重复元素保持一致。
<parent>
<child>text1</child>
<child>text2</child>
<child>text3</child>
</parent>
目前我正在检查父项的所有元素,如果我找到匹配项,我会中断循环并退出而不添加,但随着子项数量的增加,性能会下降。 和以前一样,每次添加所有子项都要迭代以检查重复项。 由于哈希和 eq 是从对象继承而在lxml元素中没有意义,因此无法在此处使用set或dict。
请建议如何实施append_child_with_check(child)
以提高性能或如果我做错了或错过了现有的库或方法
孩子本身可以是一个lxml树