python dumps和loads区别详解

这篇文章主要介绍了python dumps和loads区别详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

一.概念理解

json是一种轻量级的数据交换格式,对象由花括号括起来的逗号分割的成员构成,成员是字符串键和上文所述的值由逗号分割的键值对组成,如:

{"name":"cctester","age":30,"address":{"country":"china","province":"nanjing"}}

json.dumps()和json.loads()是python中的json格式处理函数(可以这么理解,json是字符串)

(1)json.dumps()函数是将一个Python数据类型列表进行json格式的编码(可以这么理解,json.dumps()函数是将字典转化为字符串)

(2)json.loads()函数是将json格式数据转换为字典(可以这么理解,json.loads()函数是将字符串转化为字典)

二.实例解释

#encoding=utf-8

import json

#json.dumps()函数的使用,将字典转化为字符串

dict1 = {'name':'聚焦学院','age':6}

json_info = json.dumps(dict1,ensure_ascii=False)

print ('dict1的类型:'+str(type(dict1)))

#dict1的类型:<type 'dict'>

print ('json_info的类型:'+str(type(json_info)))

#json_info的类型:<type 'str'>

print (json_info)

#{"age": 6, "name": "聚焦学院"}

new_dict=json.loads(json_info)

print (type(new_dict))

#<type 'dict'>

通过上述的实例,我们可以清楚的看到json字符串和字典数据类型的转变,上述为啥使用jsom.dumps使用ensure_ascii=False呢,这是因为json.dumps序列化时对中文默认使用的ascii编码,想输出真正的中文需要指定ensure_ascii=False:

以上是 python dumps和loads区别详解 的全部内容, 来源链接: utcz.com/z/332390.html

回到顶部