擅长:python、mysql、java
<p>下面是如何使用lxml的<code>Element</code>和<code>SubElement</code>函数创建XML文档(无需键入任何尖括号):</p>
<pre><code>from lxml import etree
data = [['SEC.12.0', '\\\\DATA\\LOC', '\\\\ftp\\location'],
['SEC.13.0', '\\\\DATA\\LOC2', '\\\\ftp\\location2']]
combo = etree.Element("combo") # Root element of XML document
for line in data:
etree.SubElement(combo, 'pro').text = line[0]
etree.SubElement(combo, 'dataloc').text = line[1]
etree.SubElement(combo, 'ftploc').text = line[2]
etree.ElementTree(combo).write("data.xml", pretty_print=True)
</code></pre>
<p>程序输出一个名为数据.xml,内容如下:</p>
^{2}$
<hr/>
<p>可以修改以上代码以使用ElementTree:</p>
<ol>
<li>将import语句更改为<code>from xml.etree import ElementTree as etree</code>。在</li>
<li>删除<code>write()</code>方法中的<code>pretty_print</code>参数。在</li>
</ol>
<p>但输出结果不会很好地打印出来。要解决这个问题,可以使用<a href="http://effbot.org/zone/element-lib.htm#prettyprint" rel="nofollow">http://effbot.org/zone/element-lib.htm#prettyprint</a>中的<code>indent()</code>函数。在</p>