Python练习之读取XML节点和属性值的方法

 更新时间:2022年06月13日 10:12:56   作者:​ 孤寒者   ​  
这篇文章主要介绍了Python练习之读取XML节点和属性值的方法,通过parse函数可以读取XML文档,该函数返回ElementTree类型的对象,通过该对象的iterfind方法可以对XML中特定节点进行迭代

面试题

有一个test.xml文件,要求读取该文件中products节点的所有子节点的值以及子节点的属性值。

test.xml文件:

<!-- products.xml -->
<root>
    <products>
        <product uuid='1234'>
            <id>10000</id>
            <name>苹果</name>
            <price>99999</price>
        </product>
        <product uuid='1235'>
            <id>10001</id>
            <name>小米</name>
            <price>999</price>
        </product>
        <product uuid='1236'>
            <id>10002</id>
            <name>华为</name>
            <price>9999</price>
        </product>
    </products>
</root>

解析

# coding=utf-8
from xml.etree.ElementTree import parse
doc = parse('./products.xml')
print(type(doc))

for item in doc.iterfind('products/product'):
    id = item.findtext('id')
    name = item.findtext('name')
    price = item.findtext('price')
    uuid = item.get('uuid')
    print('uuid={}, id={}, name={}, price={}'.format(uuid, id, name, price), end='\n----------\n')

  • 通过parse函数可以读取XML文档,该函数返回ElementTree类型的对象,通过该对象的iterfind方法可以对XML中特定节点进行迭代。
  • XML结构的独特,使得它很方便在任何应用程序中读和写数据,所以XML非常快就成为数据交换的唯一公共语言,虽然不同软件也支持其他的数据交换格式,但这并不影响,支持XML数据交换格式的应用程序可以十分容易的与windows,linux或者其他平台产生的信息结合,然后可以十分方便的加载XML数据到程序中并分析它,最后以XML格式输出结果。
  • 不过细心的朋友应该能发现,这个格式的数据与我们在爬虫爬取数据时,未经处理的原始数据格式十分相像,甚至读取操作都几乎一模一样,有兴趣的朋友可以自行去搜索看看这两种数据格式的背景哦

到此这篇关于Python练习之读取XML节点和属性值的方法的文章就介绍到这了,更多相关Python读取XML内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • python中使用smtplib和email模块发送邮件实例

    python中使用smtplib和email模块发送邮件实例

    python脚本发邮件,一般会用到smtplib和email这两个模块。看看该模块怎么使用,先看smtplib模块。 smtplib模块定义了一个简单的SMTP客户端,可以用来在互联网上发送邮件
    2014-04-04
  • Python 3.6 中使用pdfminer解析pdf文件的实现

    Python 3.6 中使用pdfminer解析pdf文件的实现

    这篇文章主要介绍了Python 3.6 中使用pdfminer解析pdf文件的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-09-09
  • Python可变参数函数用法实例

    Python可变参数函数用法实例

    这篇文章主要介绍了Python可变参数函数用法,实例分析了Python可变参数函数的定义与使用技巧,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-07-07
  • Python中的变量赋值

    Python中的变量赋值

    这篇文章主要介绍了Python中的变量赋值,Python中的变量在使用中很流畅,可以不关注类型,任意赋值,对于开发来说效率得到了提升,但不了解其中的机理,往往也会犯一些小错,让开发进行的不那么流畅,本文就从语言设计和底层原理的角度,带大家理解Python中的变量。
    2021-10-10
  • TensorFlow安装并在Pycharm搭建环境的详细图文教程

    TensorFlow安装并在Pycharm搭建环境的详细图文教程

    今天动手开始搭建TensorFlow开发环境,所以下面这篇文章主要给大家介绍了关于TensorFlow安装并在Pycharm搭建环境的详细图文教程,文中通过图文介绍的非常详细,需要的朋友可以参考下
    2022-11-11
  • Python利用ORM控制MongoDB(MongoEngine)的步骤全纪录

    Python利用ORM控制MongoDB(MongoEngine)的步骤全纪录

    MongoEngine是一个对象文档映射器(ODM),相当于一个基于SQL的对象关系映射器(ORM),下面这篇文章主要给大家介绍了关于Python利用ORM控制MongoDB(MongoEngine)的相关资料,需要的朋友可以参考下
    2018-09-09
  • Python使用pyfinance包进行证券收益分析

    Python使用pyfinance包进行证券收益分析

    在查找如何使用Python实现滚动回归时,发现一个很有用的量化金融包——pyfinance。顾名思义,pyfinance是为投资管理和证券收益分析而构建的Python分析包,主要是对面向定量金融的现有包进行补充,如pyfolio和pandas等。pyfinance包含六个模块,下面将一一介绍
    2021-11-11
  • Django中模板的继承及引用实现

    Django中模板的继承及引用实现

    Django模版引擎中最强大也是最复杂的部分就是模版继承了,页面的代码很多,随随便便就是几百行代码,但是每个页面之中都有相同的元素。本文主要介绍了Django模板的继承及引用,感兴趣的可以了解一下
    2021-08-08
  • python调用外部程序的实操步骤

    python调用外部程序的实操步骤

    在本文里小编给大家分享了关于python如何调用外部程序的步骤和相关知识点,需要的朋友们学习下。
    2019-03-03
  • 使用python判断你是青少年还是老年人

    使用python判断你是青少年还是老年人

    今天来给大家讲讲python中最基本的 if 条件语句,这几乎是所有编程语言中都存在的语句,只是语法结构稍有不同。这篇文章给大家分享使用python判断你是青少年还是老年人,感兴趣的朋友一起看看吧
    2018-11-11

最新评论