python3 实现的对象与json相互转换操作示例

yipeiwu_com7年前Python基础

本文实例讲述了python3 实现的对象与json相互转换操作。分享给大家供大家参考,具体如下:

1. python主要有三种数据类型:字典、列表、元组,其分别由花括号,中括号,小括号表示。 例如:

字典:dictData={'a':12,'b':34}
列表:listData=[1,2,3,4]
元组:tupleData=(1,2,3,4)

2. 使用json时,导入import json即可

3. python对象转json字符串,主要用到的函数:json.dumps()。例如:示例1:

#!/usr/bin/env python3
# -*- coding: utf-8 -*-
import json
"""
python对象转json字符串
"""
# 构造字典
python2json = {}
# 构造list
listTest = [1,2,3]
python2json["listTest"] = listTest
python2json["strData"] = "Python object to json."
# 转换成json字符串
jsonStr = json.dumps(python2json)
print(jsonstr)

结果:

{"listTest": [1, 2, 3], "strData": "Python object to json."}

示例2:

#!/usr/bin/env python3
# -*- coding: utf-8 -*-
import json
"""
python对象转json字符串
"""
# 构造字典
python2json = {}
# 构造dict
dictData = {'a': 123, 'b': [3,4,5], 'c': (4,5,6)}
python2json["dictTest"] = dictData
# 转换成json字符串
jsonStr = json.dumps(python2json)
print(jsonStr)

结果:

{"dictTest": {"a": 123, "b": [3, 4, 5], "c": [4, 5, 6]}}

4.json转python对象主要使用的函数是:json.loads()。例如:

#!/usr/bin/env python3
# -*- coding: utf-8 -*-
import json
"""
json转python对象
"""
str = '{"Data1": [1, 2, 3], "Data2": "Json to python object."}'
json2python = json.loads(str)
print(json2python)

结果:

{'Data1': [1, 2, 3], 'Data2': 'Json to python object.'}

5.json编码的格式几乎和python语法一致,不同点在于True会被映射为true,False会被映射为false,None会被映射为null,元组()会被映射为列表[]。

6.json使用说明文档参考地址:https://docs.python.org/2/library/json.html

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

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

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

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

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

在线json压缩/转义工具:
http://tools.jb51.net/code/json_yasuo_trans

更多Python相关内容感兴趣的读者可查看本站专题:《Python操作json技巧总结》、《Python编码操作技巧总结》、《Python数据结构与算法教程》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》、《Python入门与进阶经典教程》及《Python文件与目录操作技巧汇总》

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

相关文章

Python+OpenCV图片局部区域像素值处理详解

背景故事:我需要对一张图片做一些处理,是在图像像素级别上的数值处理,以此来反映图片中特定区域的图像特征,网上查了很多,大多关于opencv的应用教程帖子基本是停留在打开图片,提取像素重新...

Python 实现12306登录功能实例代码

下面一段代码给大家带来了python实现12306登录功能,具体代码如下所示: #!/usr/bin/env python import requests import urllib...

python3 json数据格式的转换(dumps/loads的使用、dict to str/str to dict、json字符串/字典的相互转换)

python3 json数据格式的转换(dumps/loads的使用、dict to str/str to dict、json字符串/字典的相互转换)

python3 json数据格式的转换(dumps/loads的使用、dict to str/str to dict、json字符串/字典的相互转换) Python3 JSON 数据解析...

pytorch 图像预处理之减去均值,除以方差的实例

pytorch 图像预处理之减去均值,除以方差的实例

如下所示: #coding=gbk ''' GPU上面的环境变化太复杂,这里我直接给出在笔记本CPU上面的运行时间结果 由于方式3需要将tensor转换到GPU上面,这一过程很消...

python 多进程通信模块的简单实现

多进程通信方法好多,不一而数。刚才试python封装好嘅多进程通信模块 multiprocessing.connection。 简单测试咗一下,效率还可以,应该系对socket封装,效率...