Python构建XML树结构的方法示例

yipeiwu_com6年前Python基础

本文实例讲述了Python构建XML树结构的方法。分享给大家供大家参考,具体如下:

1.构建XML元素

#encoding=utf-8
from xml.etree import ElementTree as ET
import sys
root=ET.Element('color')  #用Element类构建标签
root.text=('black')     #设置元素内容
tree=ET.ElementTree(root)  #创建数对象,参数为根节点对象
tree.write(sys.stdout)   #输出在标准输出中,也可写在文件中

输出结果:

<color>black</color>

2.构建完整XML树结构

#encoding=utf-8
from xml.etree import ElementTree as ET
import sys
root=ET.Element('goods')
name_con=['yhb','lwy']
size_con=['175','170']
for i in range(2):
#  skirt=ET.SubElement(root,'skirt')
#  skirt.attrib['index']=('%s' %i)  #具有属性的元素
  skirt=ET.SubElement(root,'skirt',index=('%s' %i)) #相当于上面两句
  name=ET.SubElement(skirt,'name') #子元素
  name.text=name_con[i]       #节点内容
  size=ET.SubElement(skirt,'size')
  size.text=size_con[i]
  tree=ET.ElementTree(root)
ET.dump(tree)  #打印树结构

输出结果:

<goods><skirt index="0"><name>yhb</name><size>175</size></skirt><skirt index="1"><name>lwy</name><size>170</size></skirt></goods>

3.XML规范中预定的字符实体

所谓字符实体就是XML文档中的特殊字符,如元素内容中有“<”时不能直接输入,因为“<”

字符实体 符号
< <
> >
& &
'
"

关于转义字符可参考本站 HTML/XML转义字符对照表http://tools.jb51.net/table/html_escape

PS:这里再为大家提供几款关于xml操作的在线工具供大家参考使用:

在线XML/JSON互相转换工具:
http://tools.jb51.net/code/xmljson

在线格式化XML/在线压缩XML
http://tools.jb51.net/code/xmlformat

XML在线压缩/格式化工具:
http://tools.jb51.net/code/xml_format_compress

XML代码在线格式化美化工具:
http://tools.jb51.net/code/xmlcodeformat

更多关于Python相关内容感兴趣的读者可查看本站专题:《Python操作xml数据技巧总结》、《Python数据结构与算法教程》、《Python Socket编程技巧总结》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》、《Python入门与进阶经典教程》及《Python文件与目录操作技巧汇总

希望本文所述对大家Python程序设计有所帮助。

相关文章

Python 获取numpy.array索引值的实例

举个例子: q=[0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15] 我想获取其中值等于7的那个值的下标,以便于用于其他计算。 如果使用np.where,...

2019 Python最新面试题及答案16道题

1.Python是如何进行内存管理的? 答:从三个方面来说,一对象的引用计数机制,二垃圾回收机制,三内存池机制 一、对象的引用计数机制 Python内部使用引用计数,来保持追踪内存中的对...

使用python获取CPU和内存信息的思路与实现(linux系统)

大家都知道,linux里一切皆为文件,在linux/unix的根目录下,有个/proc目录,这个/proc 是一种内核和内核模块用来向进程(process)发送信息的机制(所以叫做“/p...

使用Pyrex来扩展和加速Python程序的教程

 Pyrex 是一种专门设计用来编写 Python 扩展模块的语言。根据 Pyrex Web 站点的介绍,“它被设计用来在友好易用的高级 Python 世界和凌乱的低级 C 世...

Python应用库大全总结

学Python,想必大家都是从爬虫开始的吧。毕竟网上类似的资源很丰富,开源项目也非常多。 Python学习网络爬虫主要分3个大的版块:抓取,分析,存储 当我们在浏览器中输入一个url后回...