Python 如何注释XML<;标签>;使用元素树

Python 如何注释XML<;标签>;使用元素树,python,xml,elementtree,Python,Xml,Elementtree,我想评论一下这样一篇文章: <name>cranberry</name> <!-- &lt;name&gt;cranberry&lt;/name&gt; --> 蔓越莓 但是,我的脚本返回如下输出: <name>cranberry</name> <!-- &lt;name&gt;cranberry&lt;/name&gt; --> 我的剧本: im

我想评论一下这样一篇文章:

<name>cranberry</name>
<!-- &lt;name&gt;cranberry&lt;/name&gt; -->
蔓越莓
但是,我的脚本返回如下输出:

<name>cranberry</name>
<!-- &lt;name&gt;cranberry&lt;/name&gt; -->

我的剧本:

import xml.etree.ElementTree as ET
from xml.etree.ElementTree import Comment

tree = ET.parse(r"C:\sample.xml") 
root = tree.getroot() 
comment = ET.Comment("<name>cranberry</name>")
root.insert(0,comment)
tree.write(r"C:\sample1.xml")
将xml.etree.ElementTree作为ET导入
从xml.etree.ElementTree导入注释
tree=ET.parse(r“C:\sample.xml”)
root=tree.getroot()
注释=等注释(“蔓越莓”)
root.insert(0,注释)
write(r“C:\sample1.xml”)

任何建议都将不胜感激。

Python 2.6中包含的较旧的ElementTree库确实可以无条件地在注释中转义XML数据:

$ python2.6 -c "from xml.etree import ElementTree as ET; print ET.tostring(ET.Comment('<'))"
<!-- &lt; -->

$python2.6-c”从xml.etree导入ElementTree作为ET;打印ET.tostring(ET.Comment('I't not work on this.查看文档,我建议您首先添加节点,获取新插入节点的句柄并运行。对其进行注释方法,保存树。它可以是Minidom..只要我不必安装外部库。@MartijnPieters:您是对的。我的意思是,获取现有节点的句柄并运行。对其进行注释。我假设可以说,每个节点都是一个子树。快速浏览minidom源代码可以发现它确实无法逃避注释内容。@shahkalpesh:我知道你的意思,但它不会工作。:-)这是一个很好的答案;答案是+1。