• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • vbs
  • DOS/BAT
  • hta/htc
  • python
  • perl
  • VBA
  • ColdFusion
  • ruby
  • PowerShell
  • Lua
  • Golang
  • linux shell
您的位置:首页 > 脚本语言 >python > python xml.etree.ElementTree遍历xml所有节点实例详解

python xml.etree.ElementTree遍历xml所有节点实例详解

作者:lqh 字体:[增加 减小] 来源:互联网

lqh 通过本文主要向大家介绍了python xml.etree,xml.etree,python etree,python lxml etree,python etree.html等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com

python xml.etree.ElementTree遍历xml所有节点

XML文件内容:

<students> 
  <student name='刘备' sex='男' age='35'/> 
  <student name='吕布' sex='男' age='38'/> 
  <student name='貂蝉' sex='女' age='22'/> 
</students> 
</div>

代码:



#-*- coding: UTF-8 -*-  
# 从文件中读取数据 
import xml.etree.ElementTree as ET 
 
#全局唯一标识 
unique_id = 1 
 
#遍历所有的节点 
def walkData(root_node, level, result_list): 
  global unique_id 
  temp_list =[unique_id, level, root_node.tag, root_node.attrib] 
  result_list.append(temp_list) 
  unique_id += 1 
   
  #遍历每个子节点 
  children_node = root_node.getchildren() 
  if len(children_node) == 0: 
    return 
  for child in children_node: 
    walkData(child, level + 1, result_list) 
  return 
 
#获得原始数据 
#out: 
#[ 
#  #ID, Level, Attr Map 
#  [1, 1, {'ID':1, 'Name':'test1'}], 
#  [2, 1, {'ID':1, 'Name':'test2'}], 
#] 
def getXmlData(file_name): 
  level = 1 #节点的深度从1开始 
  result_list = [] 
  root = ET.parse(file_name).getroot() 
  walkData(root, level, result_list) 
 
  return result_list 
 
if __name__ == '__main__': 
  file_name = 'test.xml' 
  R = getXmlData(file_name) 
  for x in R: 
    print x 
  pass 

</div>

输出结果:



[1, 1, 'students', {}] 
[2, 2, 'student', {'age': '35', 'name': u'\u5218\u5907', 'sex': u'\u7537'}] 
[3, 2, 'student', {'age': '38', 'name': u'\u5415\u5e03', 'sex': u'\u7537'}] 
[4, 2, 'student', {'age': '22', 'name': u'\u8c82\u8749', 'sex': u'\u5973'}] 
</div>

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

</div>

您可能想查找下面的文章:

  • python xml.etree.ElementTree遍历xml所有节点实例详解
  • python xml解析实例详解

相关文章

  • Python爬虫爬取美剧网站的实现代码
  • python中pass语句用法实例分析
  • python 随机数生成的代码的详细分析
  • Python 内置函数complex详解
  • python入门之语句(if语句、while语句、for语句)
  • 使用Python编写Linux系统守护进程实例
  • 30分钟搭建Python的Flask框架并在上面编写第一个应用
  • Python操作CouchDB数据库简单示例
  • 在Python中实现贪婪排名算法的教程
  • Python自动化运维和部署项目工具Fabric使用实例

文章分类

  • vbs
  • DOS/BAT
  • hta/htc
  • python
  • perl
  • VBA
  • ColdFusion
  • ruby
  • PowerShell
  • Lua
  • Golang
  • linux shell

最近更新的内容

    • python避免死锁方法实例分析
    • python用于url解码和中文解析的小脚本(python url decoder)
    • Python基于sftp及rsa密匙实现远程拷贝文件的方法
    • 使用python装饰器验证配置文件示例
    • 使用Python装饰器在Django框架下去除冗余代码的教程
    • python文件读写操作与linux shell变量命令交互执行的方法
    • Python实现将数据库一键导出为Excel表格的实例
    • Fabric 应用案例
    • 编写Python CGI脚本的教程
    • Python中的推导式使用详解

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有