最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python3 JSON編碼解碼方法詳解

 更新時(shí)間:2019年09月06日 14:37:10   作者:桂木  
這篇文章主要介紹了Python3 JSON編碼解碼方法詳解,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下

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

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

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

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

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

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

dumps編碼

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

編碼字典

import json
odata = {'www': 1, 'python': 2, 'Python3': 3}
jdata = json.dumps(odata)
print(jdata)

編碼列表示例結(jié)果:

{"www": 1, "python": 2, "Python3": 3}
import json
ldata = [100, 'Python2', {'www': 1, 'python': 2, 'Python3': 3}]
jdata = json.dumps(ldata)
print(jdata)

示例結(jié)果:

[100, "Python3", {"www": 1, "python": 2, "Python3": 3}]

編碼字符串

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

示例結(jié)果:

"Python3"

格式化輸出JSON 

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

參數(shù)解析:

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

示例結(jié)果:

[
  "Python3",
  100,
  {
    "Python3": 3,
    "python": 2,
    "www": 1
  },
  true
] 

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

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

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

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

1
1
1 dict
1 object
1 list, tuple
1 array
1 str, unicode
1 string
1 int, long, float
1 number
1 True
1 true
1 False
1 false
1 None
1 null

loads解碼

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

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

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

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

示例結(jié)果:

<class 'list'>
['Python3', 100, {'Python3': 3, 'python': 2, 'www': 1}, True] 

總結(jié)

Python3中的json解析和編碼模塊json使用起來非常簡(jiǎn)單, 功能也非常齊全,完全能夠滿足我們?nèi)粘5男枨蟆?/p>

以上就是本文的全部內(nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • pycharm與cmd中制表符不一樣的問題解決

    pycharm與cmd中制表符不一樣的問題解決

    本文主要介紹了PyCharm和CMD中制表符寬度不同的問題,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2024-12-12
  • Python微信自動(dòng)化庫使用詳解

    Python微信自動(dòng)化庫使用詳解

    Python微信自動(dòng)化是指使用Python編程語言來實(shí)現(xiàn)對(duì)微信的自動(dòng)化操作,在Python中,有幾個(gè)庫可以用于微信自動(dòng)化操作,包括itchat、wxpy、wechatpy和wxauto,以下是對(duì)這些庫的詳細(xì)介紹,需要的朋友可以參考下
    2025-03-03
  • 使用Python的音樂播放器GUI的實(shí)現(xiàn)

    使用Python的音樂播放器GUI的實(shí)現(xiàn)

    本文主要介紹了使用Python的音樂播放器GUI的實(shí)現(xiàn),可以讓您快速輕松地管理和收聽所有音樂文件,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-12-12
  • Python中的字符串切片(截取字符串)的詳解

    Python中的字符串切片(截取字符串)的詳解

    這篇文章主要介紹了Python中的字符串切片(截取字符串)的方法,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-05-05
  • 簡(jiǎn)單示例入門了解Python TkInter框架

    簡(jiǎn)單示例入門了解Python TkInter框架

    這篇文章主要為大家通過簡(jiǎn)單示的示例帶大家入門了解Python TkInter框架,讓大家對(duì)Python TkInter有一個(gè)簡(jiǎn)單的認(rèn)知,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步
    2023-11-11
  • Python文件讀寫保存操作的示例代碼

    Python文件讀寫保存操作的示例代碼

    這篇文章主要介紹了Python文件讀寫保存操作的示例代碼,實(shí)現(xiàn)了單個(gè)文件和多文件的讀寫保存操作,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2018-09-09
  • python中pytest收集用例規(guī)則與運(yùn)行指定用例詳解

    python中pytest收集用例規(guī)則與運(yùn)行指定用例詳解

    這篇文章主要介紹了python中pytest收集用例規(guī)則與運(yùn)行指定用例詳解,天會(huì)講解一下pytest是如何收集我們寫好的用例?我們又有哪些方式來運(yùn)行單個(gè)用例或者批量運(yùn)行用例呢,需要的朋友可以參考下
    2019-06-06
  • Python數(shù)據(jù)結(jié)構(gòu)之圖的存儲(chǔ)結(jié)構(gòu)詳解

    Python數(shù)據(jù)結(jié)構(gòu)之圖的存儲(chǔ)結(jié)構(gòu)詳解

    本篇章主要介紹圖,包括圖的定義、相關(guān)術(shù)語、性質(zhì)及存儲(chǔ)結(jié)構(gòu),并用Python代碼實(shí)現(xiàn),需要的朋友可以參考下
    2021-06-06
  • python代碼實(shí)現(xiàn)將列表中重復(fù)元素之間的內(nèi)容全部濾除

    python代碼實(shí)現(xiàn)將列表中重復(fù)元素之間的內(nèi)容全部濾除

    這篇文章主要介紹了python代碼實(shí)現(xiàn)將列表中重復(fù)元素之間的內(nèi)容全部濾除,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-05-05
  • 在django中使用apscheduler 執(zhí)行計(jì)劃任務(wù)的實(shí)現(xiàn)方法

    在django中使用apscheduler 執(zhí)行計(jì)劃任務(wù)的實(shí)現(xiàn)方法

    這篇文章主要介紹了如何在django中使用apscheduler 執(zhí)行計(jì)劃任務(wù),本文通過實(shí)例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-02-02

最新評(píng)論

廉江市| 柏乡县| 巴楚县| 葫芦岛市| 安乡县| 晋州市| 托克逊县| 喀喇| 邢台县| 永登县| 布拖县| 当阳市| 阿拉善盟| 酒泉市| 来宾市| 沅陵县| 日照市| 海伦市| 德令哈市| 射阳县| 安多县| 罗山县| 青川县| 手游| 南澳县| 龙川县| 洛川县| 建平县| 海城市| 石家庄市| 浦城县| 玉环县| 临潭县| 前郭尔| 拜城县| 甘孜县| 瑞昌市| 新建县| 西贡区| 将乐县| 镇宁|