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

yipeiwu_com7年前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之pexpect实现自动交互的例子

Pexpect 是 Expect 语言的一个 Python 实现,是一个用来启动子程序,并使用正则表达式对程序输出做出特定响应,以此实现与其自动交互的 Python 模块。 Pexpec...

python 利用for循环 保存多个图像或者文件的实例

在实际应用中,会遇到保存多个文件或者图像的操作,利用for循环可以实现基本要求: for i in range(50): plt.savefig("%d.jpg"%(i+1))...

python 多维高斯分布数据生成方式

python 多维高斯分布数据生成方式

我就废话不多说了,直接上代码吧! import numpy as np import matplotlib.pyplot as plt def gen_clusters():...

Python中super函数的用法

描述 super() 函数用于调用下一个父类(超类)并返回该父类实例的方法。 super 是用来解决多重继承问题的,直接用类名调用父类方法在使用单继承的时候没问题,但是如果使用多继承...

TensorFlow tensor的拼接实例

TensorFlow提供两种类型的拼接: tf.concat(values, axis, name='concat'):按照指定的已经存在的轴进行拼接 tf.stack(values...