返回顶部
首页 > 资讯 > 后端开发 > Python >Python数据存储之XML文档和字典的互转
  • 103
分享到

Python数据存储之XML文档和字典的互转

2024-04-02 19:04:59 103人浏览 泡泡鱼

Python 官方文档:入门教程 => 点击学习

摘要

目录面试题解析总结考点: 将字典转换为XML文档;将XML文档转换为字典。 面试题 1.面试题一:如何将一个字典转换为XML文档,并将该XML文档保存为文本文件。2.面试题二:如何读

考点:

  • 将字典转换为XML文档;
  • 将XML文档转换为字典。

面试

  • 1.面试题一:如何将一个字典转换为XML文档,并将该XML文档保存为文本文件。
  • 2.面试题二:如何读取XML文件的内容,并将其转换为字典。

解析

如何将一个字典转换为XML文档,并将该XML文档保存为文本文件:

这里需要用到第三方库:dicttoxml。需要安装一下

# coding=utf-8
import dicttoxml
from xml.dom.minidom import parseString

d = [20, 'name', {'name':'xiaohong', 'age':30, 'salary':500},
                 {'name':'honghong', 'age':34, 'salary':2050},
                 {'name':'lihua',    'age':10, 'salary':1200},
    ]

bxml = dicttoxml.dicttoxml(d, custom_root='persons')    # 注意:此时返回值是二进制类型,所以需要解码哦~
xml = bxml.decode('utf-8')
print(xml)

print("---"*25)
# 美观格式
dom = parseString(xml)
prettyxml = dom.toprettyxml(indent='  ')
print(prettyxml)

# 保存
with open('persons1.xml', 'w', encoding='utf-8') as f:
    f.write(prettyxml)

面试题二 之 如何读取XML文件的内容,并将其转换为字典:

  • 这里需要用到第三方库:xmltodict。需要安装一下哦~
  • 供我们读取的XML文件是products.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
import xmltodict

with open('products.xml', 'rt', encoding='utf-8') as f:
    xml = f.read()
    d = xmltodict.parse(xml)
    print(d)

    print("---" * 25)

    print(type(d))      # 输出为:<class 'collections.OrderedDict'>
                        # 说明此时已经转为字典(排序字典)~
    print("---"*25)
    # 美观格式
    import pprint
    dd = pprint.PrettyPrinter(indent=4)
    dd.pprint(d)

总结

需要两个第三方模块(需安装):

  • dicttoxml用于将字典转换为XML文档;
  • xmltodict用于将XML文档转换为字典。

到此这篇关于python数据存储之XML文档和字典的互转的文章就介绍到这了,更多相关Python XML文档字典互转内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

--结束END--

本文标题: Python数据存储之XML文档和字典的互转

本文链接: https://lsjlt.com/news/151222.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作