Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/docker/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
lxml python中ElementMaker中的多个元素_Python_Xml_Lxml - Fatal编程技术网

lxml python中ElementMaker中的多个元素

lxml python中ElementMaker中的多个元素,python,xml,lxml,Python,Xml,Lxml,我希望在lxml中使用ElementMaker构建excel电子表格的xml表示形式,并使用相应的嵌套。我想要 <excelbook> workbook info <excelsheet> <sheetname>Sheet1</sheetname> <exceltable> <numrows>10</numrows> <numcols>1

我希望在lxml中使用ElementMaker构建excel电子表格的xml表示形式,并使用相应的嵌套。我想要

<excelbook>
  workbook info
  <excelsheet>
      <sheetname>Sheet1</sheetname>
      <exceltable>
        <numrows>10</numrows>
        <numcols>13</numcols>
      </exceltable>
      <exceltable>
        <numrows>10</numrows>
        <numcols>13</numcols>
      </exceltable>
    </excelsheet>
    <excelsheet>
      <sheetname>Sheet2</sheetname>
      <exceltable>
        <numrows>10</numrows>
        <numcols>13</numcols>
      </exceltable>
      <exceltable>
        <numrows>10</numrows>
        <numcols>13</numcols>
      </exceltable>
  </excelsheet>
</excelbook>

问题是,我只能在每本书中嵌套一张纸,在每张纸中嵌套一张表。如何更改代码以允许在每本书中有多个页,在每一页中有多个表。

您不能在同一根下两次使用相同标记名的标记,并期望它们一个接一个地追加,而不是第二个标记覆盖第一个标记,因为这不是非常一致的。 例如,如果您有:

<root>
    <elem1>some text 1</elem1>
</root>

一些文本1
如果您尝试将另一个“elem1”标记附加到root,它将覆盖现有的标记。 我建议您使用索引(“elem_0”、“elem_1”、“elem_2”等)

<root>
    <elem1>some text 1</elem1>
</root>