Python XML中缺少包装器

Python XML中缺少包装器,python,xml,pandas,Python,Xml,Pandas,我试图将特定数据从一个大XML拉到另一个大XML。我的主XML文件如下所示 <MAIN> <transaction> <date>20190415</date> <ticket>1</ticket> <value>15</value> </transaction> <transaction> <date>

我试图将特定数据从一个大XML拉到另一个大XML。我的主XML文件如下所示

<MAIN>
<transaction>
        <date>20190415</date>
        <ticket>1</ticket>
        <value>15</value>
</transaction>
<transaction>
        <date>20190415</date>
        <ticket>2</ticket>
        <value>15</value>
</transaction>
<transaction>
        <date>20190415</date>
        <ticket>3</ticket>
        <value>15</value>
</transaction>
<transaction>
        <date>20190415</date>
        <ticket>4</ticket>
        <value>15</value>
</transaction>
<transaction>
        <date>20190415</date>
        <ticket>5</ticket>
        <value>15</value>
</transaction>
</MAIN>
<Transaction>
    <ticket>1</ticket>
</Transaction>
<Transaction>
    <ticket>2</ticket>
</Transaction>
<Transaction>
    <ticket>3</ticket>
</Transaction>
<Transaction>
    <ticket>4</ticket>
</Transaction>
<Transaction>
    <ticket>5</ticket>
</Transaction>
我得到的是一个没有外部标记的纯文本文件。如下

<MAIN>
<transaction>
        <date>20190415</date>
        <ticket>1</ticket>
        <value>15</value>
</transaction>
<transaction>
        <date>20190415</date>
        <ticket>2</ticket>
        <value>15</value>
</transaction>
<transaction>
        <date>20190415</date>
        <ticket>3</ticket>
        <value>15</value>
</transaction>
<transaction>
        <date>20190415</date>
        <ticket>4</ticket>
        <value>15</value>
</transaction>
<transaction>
        <date>20190415</date>
        <ticket>5</ticket>
        <value>15</value>
</transaction>
</MAIN>
<Transaction>
    <ticket>1</ticket>
</Transaction>
<Transaction>
    <ticket>2</ticket>
</Transaction>
<Transaction>
    <ticket>3</ticket>
</Transaction>
<Transaction>
    <ticket>4</ticket>
</Transaction>
<Transaction>
    <ticket>5</ticket>
</Transaction>

1.
2.
3.
4.
5.
这里缺少的是包装器
标记。要实现这一点,我的代码中应该更改哪些内容?

替换以下内容:

with open(path_dest,'wb') as f:
    for i in L_roots:
        ET.Element('MAIN')
        f.write(ET.tostring(i, method="xml"))
为此:

outroot = ET.Element('MAIN')
outroot.extend(L_roots)

with open(path_dest,'wb') as f:
    f.write(ET.tostring(outroot, method="xml"))
代码段中的错误是您从未将新的
ET.Element('MAIN')
保存到变量中,因此该变量将丢失。当使用
f.write
时,您只需在
L_根
中写入元素,其中包含事务标记


在我提议的代码片段中,所有
L_根
元素都被插入到另一个主元素中,然后主元素被写入(其所有子元素都被自动写入)。

熊猫在问题中的位置(为什么熊猫标签)?