Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/13.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.SubElement的参数用于什么?_Python_Xml_Elementtree - Fatal编程技术网

Python ElementTree.SubElement的参数用于什么?

Python ElementTree.SubElement的参数用于什么?,python,xml,elementtree,Python,Xml,Elementtree,我在这里查看了文档: parent和tag参数看起来很清楚,但是属性名和值的格式是什么?我找不到任何以前的例子。额外的**参数是什么格式 我收到一个错误,因为我试图调用子元素本身,说它没有定义。谢谢。如果您在链接到的同一页面上进一步查看它处理类xml.etree.ElementTree.Element(tag,attrib={},**extra)它会告诉您任何额外参数的工作原理,例如: from etree import ElementTree as ET a = ET.Element('ro

我在这里查看了文档:

parent和tag参数看起来很清楚,但是属性名和值的格式是什么?我找不到任何以前的例子。额外的**参数是什么格式


我收到一个错误,因为我试图调用子元素本身,说它没有定义。谢谢。

如果您在链接到的同一页面上进一步查看它处理
类xml.etree.ElementTree.Element(tag,attrib={},**extra)
它会告诉您任何额外参数的工作原理,例如:

from etree import ElementTree as ET
a = ET.Element('root-node', tag='This is an extra that sets a tag')
b = ET.SubElement(a, 'nested-node 1')
c = ET.SubElement(a, 'nested-node 2')
d = ET.SubElement(c, 'innermost node')
ET.dump(a)

这还向您展示了子元素是如何工作的,您只需告诉它要将其附加到哪个元素(可以是子元素)。将来,也要提供一些代码,以便更容易地看到您正在做什么/想要什么。

子元素是元素树(非元素)的一个函数,它允许为元素创建子对象

  • attrib获取包含属性的字典 要创建的元素的

  • **extra用于附加关键字参数,这些参数将作为属性添加到元素中

示例:
>将xml.etree.ElementTree作为ET导入
>>>
>>>父元素=等元素(“父元素”)
>>>
>>>myattributes={“大小”:“小”,“性别”:“未知”}
>>>child=ET.SubElement(父,“子”,attrib=myattributes,age=“10”)
>>>
>>>ET.dump(父级)
>>>

因此本质上
attrib
**extra
都添加了属性,但它们接受不同的数据类型。
>>> import xml.etree.ElementTree as ET
>>>
>>> parent = ET.Element("parent")
>>>
>>> myattributes = {"size": "small", "gender": "unknown"}
>>> child = ET.SubElement(parent, "child", attrib=myattributes, age="10" )
>>>
>>> ET.dump(parent)
<parent><child age="10" gender="unknown" size="small" /></parent>
>>>