Python的xmltodict库怎么使用_Python的xmltodict库使用指南

xmltodict库可将XML转为Python字典,便于处理配置文件和接口数据。1. 使用pip install xmltodict安装;2. 通过xmltodict.parse()将XML字符串解析为嵌套字典或列表,属性以@开头,文本内容用#text表示;3. 多个同名标签自动转为列表;4. 使用xmltodict.unparse()将字典还原为格式化XML,支持pretty=True美化输出;5. 适用于中小型数据处理,不推荐用于超大文件,需结合流式工具处理大数据量。

Python的xmltodict库可以将XML数据轻松转换为Python字典,便于处理和解析。它把XML的层级结构映射成嵌套字典或列表,使用方式简单直观,特别适合需要读取或生成XML配置文件、接口数据等场景。

安装 xmltodict

使用 pip 安装该库:

pip install xmltodict

将 XML 转换为字典

使用 xmltodict.parse() 方法可以将XML字符串解析为字典。

import xmltodict

xml_data = """

Learning Python John Doe39.99Python入门 Li Hua29.99 """

data = xmltodict.parse(xml_data) print(data['bookstore']['book'])

输出结果是一个列表(因为有多个book),每个元素是字典,保留了标签内容和属性(如lang)。

处理属性和文本内容

当XML标签包含属性和文本时,xmltodict 默认用 @ 表示属性,用 #text 表示文本内容。

xml_sample = 'Hello' parsed = xmltodict.parse(xml_sample) print(parsed) # 输出: {'item': {'@id': '123', '#text': 'Hello'}}

访问属性值:parsed['item']['@id'],访问文本:parsed['item']['#text']

将字典转换回 XML

使用 xmltodict.unparse() 可以将字典还原为XML字符串。

data = { 'person': { '@age': '25', 'name': 'Alice', 'city': 'Beijing' } } xml_output = xmltodict.unparse(data, pretty=True) print(xml_output)

输出格式化的XML内容,pretty=True 用于美化排版。

基本上就这些。xmltodict 使用简洁,适合快速处理中小型XML数据,避免写复杂的ElementTree代码。注意:不适合超大XML文件,建议结合流式处理工具应对大数据量场景。