python写xml文件_使用python创建一个简单的xml文件

现在,最受欢迎(也非常简单)的选项是元素树API,它从Python2.5开始就包含在标准库中。

可供选择的办法如下:ElementTree(ElementTree的基本、纯Python实现)标准库的一部分,自2.5以来)

cElementTree(ElementTree的优化C实现)。从2.5开始也在标准库中提供)

LXML(基于libxml 2)。提供了丰富的ElementTreeAPI超集,以及XPath、CSS选择器等等)

下面是如何使用in-stdlib cElementTree生成示例文档的示例:import xml.etree.cElementTree as ET

root = ET.Element("root")doc = ET.SubElement(root, "doc")ET.SubElement(doc, "field1", name="blah").text = "some value1"

ET.SubElement(doc, "field2", name="asdfasd").text = "some vlaue2"tree = ET.ElementTree(root)tree.write("filename.xml")

我已经测试过它了,它可以工作,但我假设空白并不显着。如果您需要“prettyprint”缩进,请告诉我,我将查找如何做到这一点。(它可能是一个特定于LXML的选项。我不常使用stdlib实现)

为了进一步阅读,这里有一些有用的链接:(来自原作者的网站)

..(用示例代码从所有主要的ElementTree实现中加载最佳可用选项)

最后要注意的是,cElementTree或LXML应该足够快,以满足您的所有需求(都是优化的C代码),但是如果您需要挤出最后一点性能,LXML站点上的基准测试表明:LXML显然是序列化(生成)XML的赢家

作为实现正确的父遍历的副作用,LXML在解析方面比cElementTree慢一些。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值