本篇文章小编给大家分享一下Python数据存储之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,文件内容如下:
10000 苹果 99999 10001 小米 999 10002 华为 9999
# 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)) # 输出为:
# 说明此时已经转为字典(排序字典)~
print("---"*25)
# 美观格式
import pprint
dd = pprint.PrettyPrinter(indent=4)
dd.pprint(d)
总结
需要两个第三方模块(需安装):
dicttoxml用于将字典转换为XML文档;
xmltodict用于将XML文档转换为字典。
模拟极限越野
模拟极限越野开着大巴在各种奇葩路况里送乘客。山路弯道多得让人
模拟火车
模拟火车让你当回真正的火车司机,得先学会看信号灯、操作控制杆
可口的披萨美味的披萨
可口的披萨美味的披萨带您体验经营一家披萨店的乐趣。游戏画风温
定制虚拟偶像最新版
定制虚拟偶像最新版是一款超级经典有趣的日本模拟装扮类型的手游
病娇模拟器手机版正版(yandere simulator)
病娇模拟器最新版手游是一款萌妹二次元模拟游戏,玩家在游戏中可