浅谈Python大神都是这样处理XML文件的

yipeiwu_com5年前Python基础

最近有同学询问如何利用Python处理xml文件,特此整理一个比较简洁的操作手册,供大家参阅。

首先准备一个xml文件,xml中的内容如下所示。存储为:student.xml

如果要获取这个xml里面的数据,我们需要利用Python里面ElementTree来进行处理。

具体操作如下所示:

1、导入包(包是Python内置自带)

2、打开文件,并获取根节点的属性和节点名称

运行代码后,结果如下所示:

3、利用find方法获取子节点(缺点:只能根据提供的名称获取第一个子节点)

运行结果如下所示:

4、利用findall方法获取所有子节点,返回的节点会存在一个列表里面

运行的结果如下所示:运行的结果如下所示:

5、利用findall方法获取所有三级子节点,返回的节点会存在一个列表里面

运行结果如下所示:

6、利用遍历的方法去直接遍历子节点里面的所有元素

运行结果如下所示:

至此我们的xml的处理已经完全结束啦!

给大家留下一个练习题: 有一个xml的文件。内容如下,保存为:UILibrary.xml

针对上述xml文件,要求如下:

◆ 写一XmlUtil类

里面写一个函数:get_page

传递一个参数file_path

实现元素的读取,返回列表形式的数据,并且列表里面存储每个page节点的信息;

◆ 写一个page类

有2个属性:page_key_word,

存储页面信息;uiElement存储列表数据

◆ 写一个UiElement类

有1个属性:存储列表类型的数据,把每一个信息作为列表里面的一个数据。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

Python 在字符串中加入变量的实例讲解

有时候,我们需要在字符串中加入相应的变量,以下提供了几种字符串加入变量的方法: 1、+ 连字符 name = 'zhangsan' print('my name is '+name...

python3.0 字典key排序

IDLE 3.0 >>> dic = {"aa":1,"bb":2,"ab":3} >>> dic {'aa': 1, 'ab': 3, 'bb':...

基于Python中capitalize()与title()的区别详解

capitalize()与title()都可以实现字符串首字母大写. 主要区别在于: capitalize(): 字符串第一个字母大写 title(): 字符串内的所有单词的首字母大写...

Python中的with语句与上下文管理器学习总结

0、关于上下文管理器 上下文管理器是可以在with语句中使用,拥有__enter__和__exit__方法的对象。 with manager as var: do_somethi...

Python实现字符串格式化的方法小结

Python2.6+ 增加了str.format函数,用来代替原有的'%'操作符。它使用比'%'更加直观、灵活。下面详细介绍一下它的使用方法。 下面是使用'%'的例子: "" "P...