在最后位置插入子元素

时间:2016-11-02 11:28:18

标签: insert position lxml element

给定父元素,如何在最后位置插入子元素?到目前为止,使用-1的索引将孩子置于倒数第二位:

In [22]: et.tostring(test)
Out[22]: b'<a><orange/><b>hee</b><apple/><pear/><b>haa</b></a>'
In [23]: test.insert(-1, et.Element('mango'))
In [24]: et.tostring(test)
Out[24]: b'<a><orange/><b>hee</b><apple/><pear/><mango/><b>haa</b></a>'

1 个答案:

答案 0 :(得分:1)

获取子元素的数量(使用len())并将其用作索引。

from lxml import etree as et

test = et.fromstring('<a><orange/><b>hee</b><apple/><pear/><b>haa</b></a>')
test.insert(len(test), et.Element('mango')) 
print et.tostring(test, pretty_print=True)

输出:

<a>
  <orange/>
  <b>hee</b>
  <apple/>
  <pear/>
  <b>haa</b>
  <mango/>
</a>