gpt4 book ai didi

python libxml2序列化问题

转载 作者:太空宇宙 更新时间:2023-11-03 19:28:44 26 4
gpt4 key购买 nike

我在尝试在 python 中序列化 libxml2 对象时遇到一些问题。

特别是,如果我运行:

xmlstring = cdoc.serialize('UTF-8', 1)

其中cdoc是之前创建的libxml2文档,

我有这样的东西:(在 mac 上 - 端口 python 2.5.6)

<?xml version="1.0" encoding="UTF-8"?>
<body>
<journal>
<journal_metadata language="en">
<full_title>Contributions of Lick Observatory</full_title>
<issn media_type="print">1750-0095</issn>
<coden>CoLic</coden>
</journal_metadata>
</journal>
</body>

在 Linux(Centos 5.6 和 python 2.4 或 2.6)上,我有:

<?xml version="1.0" encoding="UTF-8"?>
<body>
<journal>
<journal_metadata language="en">
<full_title>
Contributions of Lick Observatory
</full_title>
<issn media_type="print">
1750-0095
</issn>
<coden>
CoLic
</coden>
</journal_metadata>
</journal>
</body>

字符串节点缩进有问题。

现在我可以通过这样做来解决这个问题:

xmlstring = cdoc.serialize('UTF-8')

没有缩进选项,但输出格式可读性不太好。

有没有办法解决输出中尴尬的缩进?

最佳答案

我刚刚注意到我正在运行:

xmlstring = cdoc.serialize('UTF-8', 2) 

而不是

xmlstring = cdoc.serialize('UTF-8', 1) 

由于某些原因,在 libxml2 2.6 上,这也会缩进文本节点,而在 libxml2 2.7 上则不会。

关于python libxml2序列化问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7100047/

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