我是一个蟒蛇新手。我想有效地(为了内存)写入xml文件的不同特定路径,并递归地保存xml文件的不同变体。 XML文件超过100k行并且深度嵌套。
来说明。给出了伪代码(jerry.xml),
<data>
<country name="Liechtenstein">
<rank updated="yes">2</rank>
<language>english</language>
<currency>1.21$/kg</currency>
<gdppc>141100</gdppc>
<gdpnp>2.304e+0150</gdpnp>
<neighbor name="Austria" direction="E"/>
<neighbor name="Switzerland" direction="W"/>
</country>
<country name="Singapore">
<rank updated="yes">5</rank>
<language>english</language>
<currency>4.1$/kg</currency>
<gdppc>59900</gdppc>
<gdpnp>5.2e-015</gdpnp>
<neighbor name="Malaysia" direction="N"/>
</country>
如何以递归方式写入并保存此XML(jerry.xml)的不同变体,以便每个实例的唯一区别仅在于其中一个元素文本的更改。例如。对于第一个实例,jerry.xml和new_jerry.xml之间的区别仅在于country "Liechtenstein" gdppc
现在是500000
而不是141100
。有没有办法实现效率循环并为所有元素文本执行此操作?
我想我可以使用for path in root.iterfind('path'):
和tree.write(new_jerry.xml)
,但我需要先找到路径。
任何帮助都将不胜感激。