1. 程式人生 > 程式設計 >python dumps和loads區別詳解

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:

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支援我們。