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

本文实例讲述了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

10213

name

male

math

90

"""

xmltojson(xml) #调用转换函数

5c87b34cfe88ccb81dde795d8101ab4d.png

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"

math90namemale10213

process finished with exit code 0

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

在线xml/json互相转换工具:

在线json代码检验、检验、美化、格式化工具:

json在线格式化工具:

json代码在线格式化/美化/压缩/编辑/转换工具:

在线格式化xml/在线压缩xml:

希望本文所述对大家python程序设计有所帮助。

希望与广大网友互动??

点此进行留言吧!

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Python有多种库可以用来解析XML文件并将其转换JSON格式,其最常用的是`xml.etree.ElementTree`库和`dicttojson`或者`python-dotenv`库结合`json`库。 1. 使用`xml.etree.ElementTree`库: ```python import json import xml.etree.ElementTree as ET def xml_to_dict(element): if len(element) == 0: return element.text result = {} for child in element: child_data = xml_to_dict(child) if child.tag in result: if type(result[child.tag]) is list: result[child.tag].append(child_data) else: result[child.tag] = [result[child.tag], child_data] else: result[child.tag] = child_data return result def xml_to_json(xml_file_path, json_file_path): tree = ET.parse(xml_file_path) root = tree.getroot() data = xml_to_dict(root) with open(json_file_path, 'w') as f: json.dump(data, f, indent=4) # 示例 xml_to_json('your_xml_file.xml', 'output.json') ``` 2. 使用`dicttojson`库: ```python from dicttojson import dicttojson def parse_xml_to_json(xml_content): # 首先需要将XML字符串转换为ElementTree对象 from xml.dom.minidom import parseString dom = parseString(xml_content) root = dom.documentElement return dicttojson(root) # 示例 with open('your_xml_file.xml', 'r') as f: xml_string = f.read() json_output = parse_xml_to_json(xml_string) print(json.dumps(json_output, indent=4)) ``` 注意替换`'your_xml_file.xml'`为你的实际XML文件路径。执行后,你会得到一个JSON格式的数据结构,然后你可以选择保存到文件或者直接操作
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值