相关疑难解决方法(0)

更改lxml中etree.tostring的默认缩进

我有一个XML文档,我正在使用它 lxml.etree.tostring

print etree.tostring(doc, pretty_print=True)
Run Code Online (Sandbox Code Playgroud)

默认的缩进级别是2个空格,我想将其更改为4个空格.在函数中没有任何争论tostring; 有没有办法用lxml轻松完成这项工作?

python lxml pretty-print

11
推荐指数
2
解决办法
5258
查看次数

lxml:tostring 中的 Pretty_print 选项在换行符号后无法正常工作

在符号“\n”之后,pretty_print 被忽略。例如:

import lxml.etree as etree

strs = ["<root>\n<e1/><e2/></root>",
  "<root><e1/><e2/></root>"]

for str in strs:
 xml = etree.fromstring(str)
 print etree.tostring(xml, pretty_print=True)
Run Code Online (Sandbox Code Playgroud)

输出是:

<root>
<e1/><e2/></root>

<root>
  <e1/>
  <e2/>
</root>
Run Code Online (Sandbox Code Playgroud)

两个字符串都是有效的 xml。第一个字符串有符号“\n”,该符号后的 Pretty_print 将被忽略。

是它和 lxml 错误还是我需要特殊操作才能进行漂亮的格式化?

python lxml pretty-print

2
推荐指数
1
解决办法
5080
查看次数

标签 统计

lxml ×2

pretty-print ×2

python ×2