av一区二区在线观看_亚洲男人的天堂网站_日韩亚洲视频_在线成人免费_欧美日韩精品免费观看视频_久草视

您的位置:首頁技術(shù)文章
文章詳情頁

Python3 json模塊之編碼解碼方法講解

瀏覽:73日期:2022-06-23 14:05:22

JSON(JavaScript Object Notation)是一種輕量級的數(shù)據(jù)交換格式,它基于ECMAScript的一個子集。 JSON采用完全獨(dú)立于語言的文本格式,這些特性使JSON成為理想的數(shù)據(jù)交換格式,易于人閱讀和編寫,同時也易于機(jī)器解析和生成,在接口數(shù)據(jù)開發(fā)和傳輸中非常常用。

Python3中我們利用內(nèi)置模塊json解碼和編碼JSON對象。json模塊提供了四個功能:

dumps、dump、loads、load

dumps 把數(shù)據(jù)類型轉(zhuǎn)換成字符串 

dump  把數(shù)據(jù)類型轉(zhuǎn)換成字符串并存儲在文件中

loads 把字符串轉(zhuǎn)換成數(shù)據(jù)類型  

load  把文件打開從字符串轉(zhuǎn)換成數(shù)據(jù)類型

dumps編碼

我們利用 dumps 將Python對象編碼為 JSON對象 ,當(dāng)然 dumps 只完成了序列化為str,而 dump 必須傳文件描述符,將序列化的str保存到文件中。

編碼字典

import json odata = {’www’: 1, ’jb51.net’: 2, ’Python3’: 3}jdata = json.dumps(odata)print(jdata)

示例結(jié)果:

{'www': 1, 'jb51.net': 2, 'Python3': 3}

編碼列表

import json ldata = [100, ’Python2’, {’www’: 1, ’jb51.net’: 2, ’Python3’: 3}]jdata = json.dumps(ldata)print(jdata)

示例結(jié)果:

[100, 'Python3', {'www': 1, 'jb51.net': 2, 'Python3': 3}]

編碼字符串

import json sdata = ’Python3’jdata = json.dumps(sdata)print(jdata)

示例結(jié)果:

'Python3'

格式化輸出JSON

將下面的數(shù)組,轉(zhuǎn)化為標(biāo)準(zhǔn)的json格式

import json ldata = [’Python3’, 100, {’www’: 1, ’jb51.net’: 2, ’Python3’: 3}, True]jdata = json.dumps(ldata, sort_keys=True, indent=4)print(jdata)

示例結(jié)果:

[ 'Python3', 100, { 'Python3': 3, 'jb51.net': 2, 'www': 1 }, true]

參數(shù)解析: 

sort_keys=True 那么字典的輸出會以鍵的順序排序

indent=4 表示縮進(jìn)為4,如果 indent 是一個非負(fù)整數(shù)或者字符串,那么 JSON 數(shù)組元素和對象成員會被美化輸出為該值指定的縮進(jìn)等級。

轉(zhuǎn)換關(guān)系對照表

下面為Python原始類型向JSON對象的轉(zhuǎn)化對照表:

Python JSON dict object list, tuple array str, unicode string int, long, float number True true False false None null loads解碼

我們利用 loads 用于解碼 JSON對象 。解碼結(jié)果即與之對應(yīng)的 Python對象 類型。當(dāng)然 loads 只完成了反序列化, load 只接收文件描述符,完成讀取文件和反序列化。

比如我們用來解碼上個示例的數(shù)據(jù)

import json jsondata = ’’’[ 'Python3', 100, { 'Python3': 3, 'jb51.net': 2, 'www': 1 }, true]’’’ldata = json.loads(jsondata)print(type(ldata))print(ldata)

示例結(jié)果:

<class ’list’>

[’Python3’, 100, {’Python3’: 3, ’jb51.net’: 2, ’www’: 1}, True]

可以看到我們成功對上個例子中的JSON對象進(jìn)行了解碼,并且最終的解碼結(jié)果為Python列表對象類型,符合Python對象JSON對象對照表的結(jié)果。

總結(jié)

Python3中的json解析和編碼模塊json使用起來非常簡單, 功能也非常齊全,完全能夠滿足我們?nèi)粘5男枨蟆8嚓P(guān)于Python json模塊解析和編碼的文章請點(diǎn)擊下面的相關(guān)鏈接

標(biāo)簽: Python 編程
相關(guān)文章:
主站蜘蛛池模板: 国产成人99av超碰超爽 | 亚洲高清久久 | av一级| 亚洲久久一区 | 国产成人免费 | 红桃视频一区二区三区免费 | 亚洲精品在线播放 | 欧美黑人又粗大 | 国产九九精品 | 久久男人 | 国产偷久久一级精品60部 | 午夜免费电影院 | 欧美一区二区三区在线观看 | 日韩精品1区2区3区 爱爱综合网 | 国产精品国产成人国产三级 | 91夜色在线观看 | 噜久寡妇噜噜久久寡妇 | 国产一区www| 日韩精品成人 | 久草视频在线播放 | 精品国产一区二区在线 | 亚洲超碰在线观看 | 久久精品欧美一区二区三区麻豆 | 人人澡人人爱 | 欧美一区二区三区视频 | 精品成人av| 亚洲精精品 | 久久夜视频 | 视频一区二区中文字幕 | 久久美国| 亚洲福利视频网 | 中文字幕免费 | 欧美男人亚洲天堂 | 中文字幕一区二区三区精彩视频 | 另类专区成人 | 精品一区二区不卡 | 亚洲日本国产 | 久久久久久国产 | 日韩久久综合网 | 欧美中文在线 | 一级高清视频 |