Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/306.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 minidom使用end标记创建xml元素_Python_Xml_Minidom - Fatal编程技术网

python minidom使用end标记创建xml元素

python minidom使用end标记创建xml元素,python,xml,minidom,Python,Xml,Minidom,我正在通过minidom创建XML元素: ele = doc.createElement("ele") main.appendChild(ele) ele.attributes['name']= "bla" 但元素看起来: <ele name="bla"/> 我想要的是: <ele name="bla"></ele> 这两种形式是等效的。如果确实需要结束标记,请向元素添加空文本节点: >>> ele =

我正在通过minidom创建XML元素:

    ele = doc.createElement("ele")
    main.appendChild(ele)   
    ele.attributes['name']= "bla"
但元素看起来:

<ele name="bla"/>

我想要的是:

<ele name="bla"></ele>

这两种形式是等效的。如果确实需要结束标记,请向元素添加空文本节点:

>>> ele = doc.createElement('ele')
>>> ele.attributes['name']= "bla"
>>> ele.appendChild(doc.createTextNode(''))
>>> print ele.toxml()
<ele name="bla"></ele>
>ele=doc.createElement('ele')
>>>元素属性['name']=“bla”
>>>元素appendChild(doc.createTextNode(“”))
>>>打印元素toxml()

这两种形式是等效的。如果确实需要结束标记,请向元素添加空文本节点:

>>> ele = doc.createElement('ele')
>>> ele.attributes['name']= "bla"
>>> ele.appendChild(doc.createTextNode(''))
>>> print ele.toxml()
<ele name="bla"></ele>
>ele=doc.createElement('ele')
>>>元素属性['name']=“bla”
>>>元素appendChild(doc.createTextNode(“”))
>>>打印元素toxml()

它可以工作,但有一个问题是prettyxml为这个TextNode增加了一行。还有别的办法吗?更详细地讨论了这一点,并提出了一个解决方案。@larsks,如果我使用xml.etree.ElementTree模块,如何做同样的事情?您可能应该为此提出一个新问题。它是有效的,但有一个问题是prettyxml为这个TextNode增加了一行。还有别的办法吗?更详细地讨论了这一点,并提出了一个解决方案。@larsks,如果我使用xml.etree.ElementTree模块,如何做同样的事情?您可能应该为此提出一个新问题。