更改 lxml 中 etree.tostring 的默认缩进
我有一个 XML 文档,我使用 lxml.etree.tostring
对其进行了漂亮的打印。
print etree.tostring(doc, pretty_print=True)
默认的缩进级别是 2 个空格,我想将其更改为 4 个空格。 tostring
函数中没有任何参数; 有没有办法用 lxml 轻松做到这一点?
I have an XML document which I'm pretty-printing using lxml.etree.tostring
print etree.tostring(doc, pretty_print=True)
The default level of indentation is 2 spaces, and I'd like to change this to 4 spaces. There isn't any argument for this in the tostring
function; is there a way to do this easily with lxml?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
从版本 4.5 开始,您可以使用
indent()
函数设置缩进大小 。Since version 4.5, you can set indent size using
indent()
function.正如此线程中所述,没有真正的方法可以改变
lxml.etree.tostring
漂亮打印的缩进。但是,您可以:
代码:
As said in this thread, there is no real way to change the indent of the
lxml.etree.tostring
pretty-print.But, you can:
code:
使用 XMLParser 和缩进可以轻松完成此操作。 不需要 Pretty_print :
This can be easily done, using XMLParser and indent. There is no need for pretty_print :
您可以查看此解决方案。 更改
space
值可以让您获得所需的任何缩进。 它可以是不同数量的空格或制表符"\t"
字符。You may check this solution. Changing the
space
value allows you to get any indent you want. It can be different amount of spaces or tab"\t"
character(s).