ElementTree的写入方法

时间:2019-07-04 07:18:13

标签: python xml elementtree

我正在尝试将一些XML写入磁盘:

import xml.etree.ElementTree as ET

root = ET.Element("root")
doc = ET.SubElement(root, "doc")

ET.SubElement(doc, "field1", name="blah").text = "some value1"
ET.SubElement(doc, "field2", name="asdfasd").text = "some vlaue2"

ET.dump(root)
ET.write("filename.xml")

但是我收到错误AttributeError: 'module' object has no attribute 'write'

我不知道哪个模块具有write属性。我在网上看到的所有示例均显示该属性属于tree,但我不知道如何定义tree。一位消息人士这样做:

from xml.etree.ElementTree import ElementTree
tree = ElementTree()
tree.parse("index.xhtml")
tree.write("output.xhtml")

但是我不是在读取和解析文件。谢谢您的帮助。

1 个答案:

答案 0 :(得分:2)

您需要

tree = ET.ElementTree(root)
tree.write("filename.xml")

您也可以使用

open('filename.xml', 'w').write(ET.dump(root))