我得到以下代码:
#!/usr/bin/python2.6
from lxml import etree
n = etree.Element('test')
n.set('id','1234')
print etree.tostring(n)
输出生成是
<test id="1234"/>
但我想要 <test id='1234'/>
有人可以帮忙吗?
最佳答案
我检查了文档,没有发现单/双引号选项的引用。
我认为你唯一的办法是 print etree.tostring(n).replace('"', "'")
更新
鉴于:
from lxml import etree
n = etree.Element('test')
n.set('id', "Zach's not-so-good answer")
由于撇号不平衡,我的原始答案可能会输出格式错误的 XML:
<test id='Zach's not-so-good answer'></test>
Martijn 建议使用
print etree.tostring(n).replace("'", ''').replace('"', "'")
来解决这个问题:<test id='Zach's not-so-good answer'></test>
关于PYTHON 2.6 XML.ETREE 为属性输出单引号而不是双引号,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/8730950/