在Python中,如何使用xml.etreeAPI删除节点但保留其子节点?在
是的,我知道有一个answer using lxml,但由于xml.etree是Python网站的一部分,我认为它也应该得到答案。在
原始xml文件:<?xml version="1.0"?>
1
2008
141100
4
2011
59900
68
2011
13600
假设我想删除country节点,但保留子节点并将它们分配给country的父节点?在
理想情况下,我想要一个“到位”的解决方案,而不是创建一个新的树。在
我的(非工作)解决方案:
^{pr2}$
我的打印语句的输出:data
country
rank
gdppc
neighbor
country
rank
gdppc
country
rank
gdppc
neighbor
我们马上就可以看到一个问题:country缺少标记year和一些{}标记。在
产生的.xml输出:
1
141100
4
59900
68
13600
这显然是错误的。在
问题:为什么会发生这种情况?在
我可以想象,这是因为在列表中添加/删除了一些东西,也就是说,我已经像iterator一样“使”了这个列表。在