我有一个名为projectxml的etree对象:
projetxml type <type 'lxml.etree._Element'>
我需要将其保存在磁盘上,因此我将其转换为元素树:
^{pr2}$另一个脚本必须加载Vysis.xml文件以及另外两个同类文件:
vysis=et.parse('/home/simon/Vysis.xml')
asi=et.parse('/home/simon/ASI.xml')
psi=et.parse('/home/simon/PSI.xml')
现在,asi、psi和vysis lxml对象的类型如下:
<lxml.etree._ElementTree object at 0xa7eaf8c>
我的问题是我再也做不到:
R=et.Element('DataBase')
R.append(asi)
R.append(psi)
R.append(vysis)
由于错误:
R.append(asi)
File "lxml.etree.pyx", line 697, in lxml.etree._Element.append (src/lxml /lxml.etree.c:35471)
TypeError: Argument 'element' has incorrect type (expected lxml.etree._Element, got lxml.etree._ElementTree)
我想我有两个解决办法。第一种可能是避免改变信仰etree.元素到etree.ElementTree直接保存,但我不知道怎么做。第二个解决方案是反向转换etree.ElementTree到etree.元素类型…应该有一个干净的解决方案来保存/加载xml对象吗?在
parse function返回一个
ElementTree
,而不是Element
。如果要使用parse
的结果作为元素,则需要调用getroot
。在相关问题 更多 >
编程相关推荐