📅  最后修改于: 2023-12-03 15:14:54.501000             🧑  作者: Mango
Python 中的 ElementTree 库提供了许多实用工具,其中之一是et.dump()函数。此函数可以将 XML 元素层次结构转换为字符串表示形式。本文将介绍如何使用 et.dump() 将 ElementTree 对象导出为 XML 文件并写入磁盘。
假设我们有一个名为 data.xml
的 XML 文件,我们想要将其导出为 ElementTree 对象并进行操作。首先,我们需要导入 ElementTree 库:
import xml.etree.ElementTree as ET
接下来,我们可以使用 ET.parse()
函数将 XML 文件解析为 ElementTree 对象:
tree = ET.parse('data.xml')
现在我们可以使用 et.dump()
函数将 ElementTree 对象转换为字符串表示形式:
root = tree.getroot()
ET.dump(root)
运行上述代码,我们将在控制台输出 XML 文件的内容:
<root>
<person id="1001">
<name>John</name>
<age>28</age>
<gender>Male</gender>
</person>
<person id="1002">
<name>Jane</name>
<age>24</age>
<gender>Female</gender>
</person>
</root>
现在我们已经成功将 ElementTree 对象导出为字符串表示形式。要将其写入磁盘中的 XML 文件,我们可以使用 Python 的内置文件写入函数 open()
和 write()
。
with open('output.xml', 'w') as f:
f.write("<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n")
ET.ElementTree(root).write(f, encoding='unicode')
在上述代码中,我们首先打开一个名为 output.xml
的文件,并使用 ET.ElementTree()
函数创建一个元素树对象,然后将其转换为字符串并写入文件中。最后,我们使用 with
语句来确保在完成写入操作后自动关闭文件。
运行上述代码后,我们将在磁盘上创建一个名为 output.xml
的新文件,其内容与原始 XML 文件相同。
总结
本文介绍了如何使用 Python 的 ElementTree 库中的 et.dump() 函数将 ElementTree 对象转换为字符串表示形式,并将其写入磁盘上的 XML 文件中。此外,还演示了如何使用内置的文件写入函数来执行此操作。