如何在python中使用ElementTree输出XML文件?
我对使用XMLElementTree模块编写xml文件有点困惑。我尝试构建文档: e、 g 如何准确地将其写入文件?创建类的实例并调用如何在python中使用ElementTree输出XML文件?,python,xml,elementtree,Python,Xml,Elementtree,我对使用XMLElementTree模块编写xml文件有点困惑。我尝试构建文档: e、 g 如何准确地将其写入文件?创建类的实例并调用write(): class xml.etree.ElementTree.ElementTree(element=None,file=None) ElementTree包装类。此类表示整个元素 层次结构,并添加了一些额外的序列化支持 标准XML 元素是根元素。树是用内容初始化的 如果给定,则为XML文件的 您可以使用函数编写xml- import xml.etre
write()
:
class xml.etree.ElementTree.ElementTree(element=None,file=None)
ElementTree包装类。此类表示整个元素
层次结构,并添加了一些额外的序列化支持
标准XML
元素是根元素。树是用内容初始化的
如果给定,则为XML文件的
您可以使用函数编写xml-
import xml.etree.ElementTree as ET
a = ET.Element('a')
b = ET.SubElement(a, 'b')
c = ET.SubElement(a, 'c')
d = ET.SubElement(c, 'd')
ET.ElementTree(a).write("test.xml")
这将写入文件-test.xml
-
<a><b /><c><d /></c></a>
现在,test.xml
看起来像-
<?xml version="1.0" ?>
<a>
<b/>
<c>
<d/>
</c>
</a>
只是为了确保我的操作正确。如果我想在标记上附加一个值或变量,它是:b.attrib=value,b.tag=variable吗?@Shan我想你是指元素的文本。在这种情况下,它应该是例如d.text=“test”
。
<a><b /><c><d /></c></a>
import xml.etree.ElementTree as ET
import xml.dom.minidom as md
a = ET.Element('a')
b = ET.SubElement(a, 'b')
c = ET.SubElement(a, 'c')
d = ET.SubElement(c, 'd')
xmlstr = ET.tostring(a).decode()
newxml = md.parse(xmlstr)
newxml = md.parseString(xmlstr)
with open('test.xml','w') as outfile:
outfile.write(newxml.toprettyxml(indent='\t',newl='\n'))
<?xml version="1.0" ?>
<a>
<b/>
<c>
<d/>
</c>
</a>