gpt4 book ai didi

python - 使用 xml.etree.ElementTree 打印格式良好的 xml 文件

转载 作者:IT老高 更新时间:2023-10-28 20:35:16 27 4
gpt4 key购买 nike

我正在尝试使用 xml.etree.ElementTree 用 Python 写出 xml 文件。问题是它们不断在一行中生成。我希望能够轻松引用它们,所以如果可能的话,我真的希望能够干净地写出文件。

这就是我得到的:

<Language><En><Port>Port</Port><UserName>UserName</UserName></En><Ch><Port>IP地址</Port><UserName>用户名称</UserName></Ch></Language>

这是我希望看到的:

<Language>
<En>
<Port>Port</Port>
<UserName>UserName</UserName>
</En>
<Ch>
<Port>IP地址</Port>
<UserName>用户名称</UserName>
</Ch>
</Language>

最佳答案

您可以使用函数toprettyxml()来自 xml.dom.minidom为了做到这一点:

def prettify(elem):
"""Return a pretty-printed XML string for the Element.
"""
rough_string = ElementTree.tostring(elem, 'utf-8')
reparsed = minidom.parseString(rough_string)
return reparsed.toprettyxml(indent="\t")

这个想法是将你的 Element 打印在一个字符串中,使用 minidom 对其进行解析,然后使用 toprettyxml 函数将其再次转换为 XML。

来源:http://pymotw.com/2/xml/etree/ElementTree/create.html

关于python - 使用 xml.etree.ElementTree 打印格式良好的 xml 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17402323/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com