关键词

Python使用minidom读写xml的方法

下面是关于“Python使用minidom读写xml的方法”的详细讲解。

简介

XML是一种常见的数据交换格式,在Python中使用minidom模块可以很方便地处理XML文件。minidom模块是Python自带的模块,无需安装额外的依赖库,因此使用起来很方便。

读取XML文件

要读取XML文件,需要使用minidom模块中的parse函数,将XML文件解析为一个DOM对象,然后可以使用DOM对象提供的方法获取XML文件中的数据。

以下是一个读取XML文件的示例代码:

from xml.dom import minidom

# 解析XML文件为DOM对象
dom = minidom.parse('example.xml')

# 获取XML文件中的root节点
root = dom.documentElement

# 获取节点名为person的节点
persons = root.getElementsByTagName('person')

# 遍历person节点,获取节点中的name和age属性值
for person in persons:
    name = person.getAttribute('name')
    age = person.getAttribute('age')
    print('name: %s, age: %s' % (name, age))

在这个示例代码中,使用minidom模块的parse函数将example.xml文件解析为一个DOM对象,然后获取根节点(root),接着使用getElementsByTagName函数获取节点名为person的节点,并对节点进行遍历,获取name和age属性值。

写入XML文件

要写入XML文件,首先需要创建一个DOM对象,然后创建要写入的XML节点,最后将节点添加到DOM对象中,并将DOM对象写入文件中。

以下是一个写入XML文件的示例代码:

from xml.dom import minidom

# 创建XML文档对象
dom = minidom.Document()

# 创建根节点
root = dom.createElement('person_list')
dom.appendChild(root)

# 创建person节点
person = dom.createElement('person')

# 创建name节点和age节点,并添加到person节点中
name = dom.createElement('name')
name.appendChild(dom.createTextNode('Tom'))
age = dom.createElement('age')
age.appendChild(dom.createTextNode('18'))
person.appendChild(name)
person.appendChild(age)

# 将person节点添加到根节点中
root.appendChild(person)

# 将DOM对象写入XML文件中
with open('output.xml', 'w', encoding='utf-8') as f:
    dom.writexml(f, indent='', addindent='\t', newl='\n', encoding='utf-8')

在这个示例代码中,首先创建一个空的DOM对象,然后创建根节点 person_list,并将其添加到DOM对象中。接着创建要写入的person节点,并使用 createElement 和 createTextNode 方法创建name和age子节点,并将他们添加到person节点中。最后将person节点添加到根节点中,并使用DOM对象的writexml方法将DOM对象写入文件中。

以上就是关于“Python使用minidom读写xml的方法”的完整攻略,希望对你有所帮助。

本文链接:http://task.lmcjl.com/news/16599.html

展开阅读全文