Python?的Json?模塊編碼詳解
可以用函數(shù) json.dumps()
將 Python 對象編碼轉(zhuǎn)換為字符串形式。
例如:
import json python_obj = [[1,2,3],3.14,'abc',{'key1':(1,2,3),'key2':[4,5,6]},True,False,None] json_str=json.dumps(python_obj) print(json_str)
輸出:
[[1, 2, 3], 3.14, "abc", {"key1": [1, 2, 3], "key2":
[4, 5, 6]}, true, false, null]
簡單類型對象編碼后的字符串和其原始的 repr()結(jié)果基本是一致的,但有些數(shù)據(jù)類型,如上例中的元組(1, 2, 3)被轉(zhuǎn)換成了[1, 2, 3](json 模塊的 array 數(shù)組形式)。
可以向函數(shù) json.dumps()傳遞一些參數(shù)以控制轉(zhuǎn)換的結(jié)果。例如,參數(shù) sort_keys=True 時(shí),dict 類型的數(shù)據(jù)將按key(鍵)有序轉(zhuǎn)換:
data = [{'xyz': 3.0,'abc': 'get', 'hi': (1,2) },'world','hello'] json_str = json.dumps(data) print(json_str) json_str = json.dumps(data, sort_keys=True) print(json_str)
輸出:
[{"xyz": 3.0, "abc": "get", "hi": [1, 2]}, "world", "hello"]
[{"abc": "get", "hi": [1, 2], "xyz": 3.0}, "world", "hello"]
即當(dāng) sort_keys=True 時(shí),轉(zhuǎn)換后的 json 串對于字典的元素是按鍵(key)有序的。
對于結(jié)構(gòu)化數(shù)據(jù),可以給參數(shù) indent 設(shè)置一個值(如 indent=3)來產(chǎn)生具有縮進(jìn)的、閱讀性好的json 串:
json_str = json.dumps(data, sort_keys=True,indent = 3) print(json_str)
輸出:
[
??? {
??????? "abc": "get",
??????? "hi": [
??????????? 1,
??????????? 2
??????? ],
??????? "xyz": 3.0
??? },
??? "world",
??? "hello"
]
總結(jié)
本篇文章就到這里了,希望能夠給你帶來幫助,也希望您能夠多多關(guān)注腳本之家的更多內(nèi)容!
相關(guān)文章
用gpu訓(xùn)練好的神經(jīng)網(wǎng)絡(luò),用tensorflow-cpu跑出錯的原因及解決方案
這篇文章主要介紹了用gpu訓(xùn)練好的神經(jīng)網(wǎng)絡(luò),用tensorflow-cpu跑出錯的原因及解決方案,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2021-03-03Django同時(shí)連接多種數(shù)據(jù)庫的實(shí)現(xiàn)
在開發(fā)Django項(xiàng)目的時(shí)候,很多時(shí)候都是使用一個數(shù)據(jù)庫,即settings 中只有default數(shù)據(jù)庫,但是有一些項(xiàng)目確實(shí)也需要使用多個數(shù)據(jù)庫,本文主要介紹了Django同時(shí)連接多種數(shù)據(jù)庫的實(shí)現(xiàn),感興趣的可以了解一下2023-11-11Pycharm配置opencv與numpy的實(shí)現(xiàn)
本文總結(jié)了兩種方法來導(dǎo)入opencv與numpy包,第一種是直接在Pycharm中導(dǎo)入兩個包,第二種是在官網(wǎng)下載相關(guān)文件進(jìn)行配置,感興趣的小伙伴們可以參考一下2021-07-07Python使用win32com模塊實(shí)現(xiàn)數(shù)據(jù)庫表結(jié)構(gòu)自動生成word表格的方法
這篇文章主要介紹了Python使用win32com模塊實(shí)現(xiàn)數(shù)據(jù)庫表結(jié)構(gòu)自動生成word表格的方法,結(jié)合實(shí)例形式分析了win32com模塊下載、連接mysql、查詢獲取表結(jié)構(gòu)以及使用win32com生成word表格的相關(guān)操作技巧,需要的朋友可以參考下2018-07-07python實(shí)現(xiàn)json文件的增刪改操作方法
這篇文章主要介紹了python實(shí)現(xiàn)json文件的增刪改操作,本文通過示例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2023-06-06