Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/vba/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在python中使用ElementTree输出XML文件?_Python_Xml_Elementtree - Fatal编程技术网

如何在python中使用ElementTree输出XML文件?

如何在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

我对使用XMLElementTree模块编写xml文件有点困惑。我尝试构建文档: e、 g

如何准确地将其写入文件?

创建类的实例并调用
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>