我试图使用Python将多个XML文件合并在一起,而不是外部库.XML文件具有嵌套元素.
示例文件1:
<root>
<element1>textA</element1>
<elements>
<nested1>text now</nested1>
</elements>
</root>
Run Code Online (Sandbox Code Playgroud)
示例文件2:
<root>
<element2>textB</element2>
<elements>
<nested1>text after</nested1>
<nested2>new text</nested2>
</elements>
</root>
Run Code Online (Sandbox Code Playgroud)
我想要的是:
<root>
<element1>textA</element1>
<element2>textB</element2>
<elements>
<nested1>text after</nested1>
<nested2>new text</nested2>
</elements>
</root>
Run Code Online (Sandbox Code Playgroud)
我尝试过的:
从这个答案.
from xml.etree import ElementTree as et
def combine_xml(files):
first = None
for filename in files:
data = et.parse(filename).getroot()
if first is None:
first = data
else:
first.extend(data)
if first is not None:
return et.tostring(first)
Run Code Online (Sandbox Code Playgroud)
我得到了什么:
<root>
<element1>textA</element1>
<elements>
<nested1>text now</nested1>
</elements>
<element2>textB</element2>
<elements>
<nested1>text after</nested1>
<nested2>new …Run Code Online (Sandbox Code Playgroud)