Python 添加XML元素并保存文件?

Python 添加XML元素并保存文件?,python,xml,minidom,Python,Xml,Minidom,我对使用Python和minidom进行XML解析非常陌生 我得到了这个XML: 我想添加以下行,然后将其保存到同一文件中,例如: 我正在使用以下方法进行解析: doc = minidom.parse('filelist.xml') files = doc.getElementsByTagName('file') for file in files: idFile = file.getAttribute("id") print(idFile) 如何添加该“元素”

我对使用Python和minidom进行XML解析非常陌生

我得到了这个XML:


我想添加以下行,然后将其保存到同一文件中,例如:


我正在使用以下方法进行解析:

doc = minidom.parse('filelist.xml')
files = doc.getElementsByTagName('file')
for file in files:
      idFile = file.getAttribute("id")
      print(idFile)

如何添加该“元素”,然后保存到同一文件?

从原始代码开始,向代码中添加了以下内容,以完成添加元素并将其保存回原始文件:

  • 创建新的“
    文件”
    ”元素
  • 设置新的“
    文件”
    “元素”
    id
    ”属性
  • 检索文档根(“
    filelist
    ”)节点
  • 将新的“
    file
    ”元素附加到“
    filelist
    ”节点
  • 将更新的XML写回原始文件
  • 请参阅下面的更新代码和注释,以匹配此添加列表

    from xml.dom import minidom
    
    doc = minidom.parse('filelist.xml')
    # 1. Create a new 'file' element
    new_file_element = doc.createElement('file')
    # 2. Set the new 'file' element 'id' attribute
    new_file_element.setAttribute('id', '2.jpg')
    # 3. Retrieve the document root ('filelist') node
    filelist_element = doc.documentElement
    # 4. Append the new 'file' element to the 'filelist' node
    filelist_element.appendChild(new_file_element)
    files = doc.getElementsByTagName('file')
    for file in files:
        idFile = file.getAttribute('id')
        print(idFile)
    # 5. Write updated XML back to original file
    with open('filelist.xml', 'w') as xml_file:
        doc.writexml(xml_file, encoding='utf-8')