前言
- 本文是个人使用Python XML模块操作XML文件的电子笔记,由于水平有限,难免出现错漏,敬请批评改正。
- 更多精彩内容,可点击进入我的个人主页查看
前提条件
- 熟悉Python
相关介绍
- Python是一种跨平台的计算机程序设计语言。是一个高层次的结合了解释性、编译性、互动性和面向对象的脚本语言。最初被设计用于编写自动化脚本(shell),随着版本的不断更新和语言新功能的添加,越多被用于独立的、大型项目的开发。
- Python OS模块是负责程序与操作系统的交互,提供了访问操作系统底层的接口和非常丰富的方法用来处理文件和目录。
- XML 指可扩展标记语言(eXtensible Markup Language),XML 被设计用来传输和存储数据。XML 是一套定义语义标记的规则,这些标记将文档分成许多部件并对这些部件加以标识,它也是元标记语言,即定义了用于定义其他与特定领域有关的、语义的、结构化的标记语言的句法语言。
- 文件对象模型(Document Object Model,简称DOM),是W3C组织推荐的处理可扩展置标语言的标准编程接口。一个 DOM 的解析器在解析一个 XML 文档时,一次性读取整个文档,把文档中所有元素保存在内存中的一个树结构里,之后你可以利用DOM 提供的不同的函数来读取或修改文档的内容和结构,也可以把修改过的内容写入xml文件。
实验环境
- Python 3.x (面向对象的高级语言)
Python统计XML文件里的Object个数(真实框个数)
代码实现
import os
import xml.dom.minidom
path = 'Annotations/' # 文件夹路径
filename_list=os.listdir(path) # 获取文件夹里的文件
count=0 # 计数器
for filename in filename_list: # 遍历读取所有XML文件
dom = xml.dom.minidom.parse(path+filename) # 使用minidom解析器打开 XML 文档,创建一个dom对象
root = dom.documentElement # 获取到根节点
# 读取标注目标框
objects = root.getElementsByTagName("name")
count+=len(objects) # 计数
print("所有XML文件里的Object个数(真实框个数)为:",count)
输出结果
更多精彩内容,可点击进入Python日常小操作专栏或我的个人主页查看