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

Aria
Aria
发布时间:2026-10-13| 3人浏览过
原创

本文介绍如何利用Python标准库xml.etree.ElementTree构建XML元素及完整树结构。通过示例演示如何创建根节点、添加子元素及属性,并输出XML结果。同时解析XML规范中预定的字符实体转义规则,提供相关在线工具链接,帮助开发者掌握Python处理XML数据的核心技巧。

本文详细介绍使用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文档中用于表示特殊字符的编码形式。例如,当元素内容中包含“<”符号时,不能直接输入该字符,因为“<”在XML中具有标签起始的特殊含义,直接输入会导致解析错误。

字符实体 符号
< <
> >
& &
&apos;
"

如需了解更多关于转义字符的详细信息,可参考本站提供的HTML/XML转义字符对照表:http://tools.jb51.net/table/html_escape

此外,本文还提供了以下几款用于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处理XML数据感兴趣,建议进一步查阅本站相关专题文章,包括《Python操作xml数据技巧总结》、《Python数据结构与算法教程》、《Python Socket编程技巧总结》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》、《Python入门与进阶经典教程》以及《Python文件与目录操作技巧汇总》,以获取更全面的技术支持。

希望本文所述内容能对您的Python程序设计工作有所帮助。

相关标签:

免责声明:本文内容仅供参考,不代表本站观点。转载或引用请注明出处。

Python 相关产品和应用

全部下载
Selenium

Selenium

4.51.0 · Windows

用于浏览器自动化和 Web 测试的 Python 工具。

scikit-learn

scikit-learn

1.9.1 · Windows

常用 Python 机器学习算法与模型评估工具库。

Black

Black

26.10.1 · Windows

强调一致性的 Python 自动代码格式化工具。

Ruff

Ruff

0.17.1 · macOS

由 Rust 编写的高速 Python 代码检查和格式化工具。

pytest

pytest

9.1.1 · Windows

简洁而强大的 Python 自动化测试框架。

FastAPI

FastAPI

0.146.0 · Windows

高性能 Python API 框架,支持类型提示和自动接口文档。

Flask

Flask

3.1.3 · Windows

轻量灵活的 Python Web 应用框架。

Django

Django

6.1.2 · Windows

成熟的 Python Web 框架,适合构建内容站点和业务系统。

Spyder

Spyder

6.1.7 · Windows

面向科学计算与数据分析的 Python 集成开发环境。

SciPy

SciPy

1.18.1 · Windows

面向科学、工程和技术计算的 Python 算法库。