python – XML声明standalone =“yes”lxml

我有一个xml我正在解析,进行一些更改并保存到一个新文件.它有声明<?xml version =“1.0”encoding =“utf-8”standalone =“yes”?>我想保留.当我保存我的新文件时,我失去了standalone =“yes”位.我该如何保管?
这是我的代码:

templateXml = """<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<package>
  <provider>Some Data</provider>
  <studio_display_name>Some Other Data</studio_display_name>
</package>"""

from lxml import etree
tree = etree.fromstring(templateXml)

xmlFileOut = '/Users/User1/Desktop/Python/Done.xml'   

with open(xmlFileOut, "w") as f:
    f.write(etree.tostring(tree, pretty_print = True, xml_declaration = True, encoding='UTF-8'))

解决方法:

您可以将独立关键字参数传递给tostring():

etree.tostring(tree, pretty_print = True, xml_declaration = True, encoding='UTF-8', standalone="yes")
上一篇:python – XPath:选择空值的标签


下一篇:python – lxml是否有可能以不区分大小写的方式工作?