【问题标题】:Insert xml element as first child using ElementTree in python在 python 中使用 ElementTree 将 xml 元素作为第一个子元素插入
【发布时间】:2023-03-31 07:07:01
【问题描述】:

我正在使用 python 在 xml 文档中创建一个元素,然后将其作为文档的 FIRST CHILD 插入。所以,如果我要创建一个名为 newChild 的元素,我会想要这样的 xml...

<root>
  <childA></childA>
  <childB></childB>
  <childC></childC>
</root>

变成……

<root>
  <newChild></newChild>
  <childA></childA>
  <childB></childB>
  <childC></childC>
</root>

我知道任意 xml 中元素的顺序无关紧要,但是我为一个古老的系统编写 xml doc尊重。

【问题讨论】:

  • 到目前为止您尝试过什么?你的具体问题是什么?错误信息是什么?还是您希望我们编写您的代码?
  • 我的问题的定义非常简洁。我确实阅读了文档(并且承认在第一次阅读时错过了正确的答案) - 我还没有编写任何代码,因为我在文档中没有找到适合我需要的任何内容。 stackoverflow.com/questions/4739834/… 当您问这个问题时,您是否期望有人编写您的代码?你的错误信息是什么?

标签: python xml elementtree


【解决方案1】:

xml.etree.ElementTree.Element.insert 方法允许您向插入到特定位置的元素添加新的子元素。

在您的情况下,element.insert(0, new_sub_element) 应该可以解决问题。

【讨论】:

  • 谢谢 - 这看起来和我要找的完全一样。我习惯于使用复制/粘贴的 perl 解析器,并且没有考虑寻找插入方法。我会在周一回到工作岗位并投票/接受时试一试。
  • 在我的 Python 2.7 运行时,插入替换了该位置的现有组件。在此示例中,childA 将替换为 newChild
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2015-05-05
  • 2021-11-15
  • 1970-01-01
  • 2011-05-30
  • 2017-05-24
  • 2019-03-10
相关资源
最近更新 更多