python

超轻量级php框架startmvc

Python中xml和json格式相互转换操作示例

更新时间:2020-06-14 07:42:01 作者:startmvc
本文实例讲述了Python中xml和json格式相互转换操作。分享给大家供大家参考,具体如下:Pytho

本文实例讲述了Python中xml和json格式相互转换操作。分享给大家供大家参考,具体如下:

Python中xml和json格式是可以互转的,就像json格式转Python字典对象那样。

xml格式和json格式互转用到的xmltodict

安装xmltodict

C:\Users\Administrator>pip3 install xmltodict Collecting xmltodict   Downloading xmltodict-0.11.0-py2.py3-none-any.whl Installing collected packages: xmltodict Successfully installed xmltodict-0.11.0

利用pip可以直接安装。

xml格式转json格式


import json
import xmltodict
#定义xml转json的函数
def xmltojson(xmlstr):
 #parse是的xml解析器
 xmlparse = xmltodict.parse(xmlstr)
 #json库dumps()是将dict转化成json格式,loads()是将json转化成dict格式。
 #dumps()方法的ident=1,格式化json
 jsonstr = json.dumps(xmlparse,indent=1)
 print(jsonstr)
if __name__ == "__main__":
 xml =""" #需要转换json格式的xml
<student>
 <stid>10213</stid>
 <info>
 <name>name</name>
 <sex>male</sex>
 </info>
 <course>
 <name>math</name>
 <score>90</score>
 </course>
</student>
 """
 xmltojson(xml) #调用转换函数

json格式转xml格式


import xmltodict
#json转xml函数
def jsontoxml(jsonstr):
 #xmltodict库的unparse()json转xml
 xmlstr = xmltodict.unparse(jsonstr)
 print(xmlstr)
if __name__ == "__main__":
 json = {'student': {'course': {'name': 'math', 'score': '90'},
 'info': {'sex': 'male', 'name': 'name'}, 'stid': '10213'}}
 jsontoxml(json)

结果:

C:\python35\python.exe "D:/自动化测用例/json to xml.py" <?xml version="1.0" encoding="utf-8"?> <student><course><name>math</name><score>90</score></course><info><name>name</name><sex>male</sex></info><stid>10213</stid></student>

Process finished with exit code 0

PS:这里再为大家推荐几款比较实用的json与xml在线工具供大家参考使用:

在线XML/JSON互相转换工具: http://tools.jb51.net/code/xmljson

在线JSON代码检验、检验、美化、格式化工具: http://tools.jb51.net/code/json

JSON在线格式化工具: http://tools.jb51.net/code/jsonformat

json代码在线格式化/美化/压缩/编辑/转换工具: http://tools.jb51.net/code/jsoncodeformat

在线格式化XML/在线压缩XML: http://tools.jb51.net/code/xmlformat

Python xml json 相互转换