使用xmltodict库的parse()方法将XML转换为字典型数据
发布时间:2023-12-23 23:00:13
xmltodict是一个基于Python的库,它允许将XML数据转换为易于处理的字典型数据结构。它提供了parse()方法来执行这个转换过程。
下面是一个使用xmltodict库的parse()方法将XML转换为字典型数据的例子:
import xmltodict
# 定义一个XML字符串
xml_str = """
<bookstore>
<book category="cooking">
<title lang="en">Everyday Italian</title>
<author>Giada De Laurentiis</author>
<year>2005</year>
<price>30.00</price>
</book>
<book category="children">
<title lang="en">Harry Potter</title>
<author>J.K. Rowling</author>
<year>2003</year>
<price>29.99</price>
</book>
<book category="web">
<title lang="en">Learning XML</title>
<author>Erik T. Ray</author>
<year>2003</year>
<price>39.95</price>
</book>
</bookstore>
"""
# 使用parse()方法将XML转换为字典型数据
xml_dict = xmltodict.parse(xml_str)
# 打印转换后的字典型数据
print(xml_dict)
运行这段代码,输出如下:
{'bookstore': {'book': [{'@category': 'cooking', 'title': {'@lang': 'en', '#text': 'Everyday Italian'}, 'author': 'Giada De Laurentiis', 'year': '2005', 'price': '30.00'}, {'@category': 'children', 'title': {'@lang': 'en', '#text': 'Harry Potter'}, 'author': 'J.K. Rowling', 'year': '2003', 'price': '29.99'}, {'@category': 'web', 'title': {'@lang': 'en', '#text': 'Learning XML'}, 'author': 'Erik T. Ray', 'year': '2003', 'price': '39.95'}]}}
可以看到,parse()方法将XML字符串转换为了一个字典型数据结构。XML中的每个元素都对应字典中的一个键值对。对于带有属性的元素,属性被转换为对应键值对的字典的键值对。
要访问转换后的字典中的元素,只需按照字典的访问方式进行访问即可。例如,要访问第一本书的标题,可以使用如下代码:
title = xml_dict['bookstore']['book'][0]['title']['#text'] print(title)
运行这段代码,输出为:
Everyday Italian
这个例子展示了如何使用xmltodict库的parse()方法将XML转换为字典型数据,并演示了如何访问转换后的字典中的元素。
