gpt4 book ai didi

python - 如何在Python中漂亮地打印xml而不生成DOM树?

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

对于非常大的 xml 数据来说,生成 DOM 树的成本太高。有没有一种方法可以在不生成的情况下完成打印?我正在使用 python-2.7。

最佳答案

无论使用哪种语言,在不生成树的情况下解析 XML 文档的方法是使用面向事件的解析器。使用这些类型的解析器,您可以向解析器提供一些事件处理程序,解析器将在处理的特定点调用这些事件处理程序:节点开始、节点结束、数据开始等。

因此,您可以使用这种解析器,并在每次有新节点时转到新行,并在进入节点时增加缩进,在退出节点时减少缩进。由于这些解析器的工作方式,向前查看节点是否适合一行会很棘手,因此 pretty-print 可能不如使用树时那么漂亮(或者你可以,但它会变得复杂)。

在Python中,标准库附带了3个事件驱动的解析器(排名不分先后):

我建议你看看它们并尝试玩一下。

关于python - 如何在Python中漂亮地打印xml而不生成DOM树?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32623603/

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