with lxml 插入解析后的 xml 文件作为后续输出的 Element
with lxml Inserting a parsed xml file as an Element for subsequent output
我有一个使用 lxml 来创建一些 xml 的应用程序,目前有一个部分是另一个 xml 文件的嵌入式包含
问题是,当我保存文件时,我还需要将包含的 xml 保存在同一目录中。
我正在寻找的是,当我创建元素树并进入当前我为包含设置的部分时,我实际上解析了包含文件,使其成为元素树的一部分,并将成为输出。
我正在创建一个 GDML 文件,因此我的应用程序具有(显然它会输出更详细的元素树)
gdml = ET.Element('gdml')
define = ET.SubElement(gdml, 'define')
structure = ET.SubElement(gdml, 'structure')
setup = ET.SubElement(gdml, 'setup', {'name': 'Default', 'version': '1.0'})
ET.SubElement(setup,'world', {'ref':self.Name})
solids = ET.SubElement(gdml, 'solids')
目前资料部分有
ent = ET.Entity("materials")
materials = ET.SubElement(gdml, 'materials')
materials.append(ent)
当我输出文件时要求要嵌入的文件materials.xml在同一目录中。
我想解析材料xml文件并添加到元素树
materials = ET.parse("./materials.xml")
如何将素材添加到 gdml ET.Element
您可以像这样添加 materials.xml 中的任何内容:
# Parse materials.xml and get the root element
materials = ET.parse("materials.xml").getroot()
# Append materials as a new child of the gdml root element
gdml.append(materials)
我有一个使用 lxml 来创建一些 xml 的应用程序,目前有一个部分是另一个 xml 文件的嵌入式包含
问题是,当我保存文件时,我还需要将包含的 xml 保存在同一目录中。
我正在寻找的是,当我创建元素树并进入当前我为包含设置的部分时,我实际上解析了包含文件,使其成为元素树的一部分,并将成为输出。
我正在创建一个 GDML 文件,因此我的应用程序具有(显然它会输出更详细的元素树)
gdml = ET.Element('gdml')
define = ET.SubElement(gdml, 'define')
structure = ET.SubElement(gdml, 'structure')
setup = ET.SubElement(gdml, 'setup', {'name': 'Default', 'version': '1.0'})
ET.SubElement(setup,'world', {'ref':self.Name})
solids = ET.SubElement(gdml, 'solids')
目前资料部分有
ent = ET.Entity("materials")
materials = ET.SubElement(gdml, 'materials')
materials.append(ent)
当我输出文件时要求要嵌入的文件materials.xml在同一目录中。
我想解析材料xml文件并添加到元素树
materials = ET.parse("./materials.xml")
如何将素材添加到 gdml ET.Element
您可以像这样添加 materials.xml 中的任何内容:
# Parse materials.xml and get the root element
materials = ET.parse("materials.xml").getroot()
# Append materials as a new child of the gdml root element
gdml.append(materials)