gpt4 book ai didi

python - 如何使用 xml.etree.ElementTree 编写 XML 声明

转载 作者:太空宇宙 更新时间:2023-11-03 21:12:04 25 4
gpt4 key购买 nike

我正在使用 ElementTree 在 Python 中生成 XML 文档,但 tostring 函数不包含 XML declaration转换为明文时。

from xml.etree.ElementTree import Element, tostring

document = Element('outer')
node = SubElement(document, 'inner')
node.NewValue = 1
print tostring(document) # Outputs "<outer><inner /></outer>"

我需要我的字符串包含以下 XML 声明:

<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>

但是,似乎没有任何记录的方法可以做到这一点。

是否有正确的方法在 ElementTree 中呈现 XML 声明?

最佳答案

我惊讶地发现似乎没有办法使用ElementTree.tostring()。但是,您可以使用 ElementTree.ElementTree.write() 将 XML 文档写入假文件:

from io import BytesIO
from xml.etree import ElementTree as ET

document = ET.Element('outer')
node = ET.SubElement(document, 'inner')
et = ET.ElementTree(document)

f = BytesIO()
et.write(f, encoding='utf-8', xml_declaration=True)
print(f.getvalue()) # your XML file, encoded as UTF-8

参见this question 。即使如此,我认为如果不自己编写前缀,您也无法获得“独立”属性。

关于python - 如何使用 xml.etree.ElementTree 编写 XML 声明,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54994774/

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