亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

Python3 JSON編碼解碼方法詳解

系統 1760 0

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

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

dumps 把數據類型轉換成字符串

dump 把數據類型轉換成字符串并存儲在文件中

loads 把字符串轉換成數據類型

load 把文件打開從字符串轉換成數據類型

dumps編碼

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

編碼字典

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

編碼列表示例結果:

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

示例結果:

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

編碼字符串

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

示例結果:

            
"Python3"
          

格式化輸出JSON 

將下面的數組,轉化為標準的json格式

參數解析:

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

示例結果:

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

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

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

轉換關系對照表

下面為Python原始類型向JSON對象的轉化對照表:

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對象 。解碼結果即與之對應的 Python對象 類型。當然 loads 只完成了反序列化, load 只接收文件描述符,完成讀取文件和反序列化。

比如我們用來解碼上個示例的數據

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

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

示例結果:

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

總結

Python3中的json解析和編碼模塊json使用起來非常簡單, 功能也非常齊全,完全能夠滿足我們日常的需求。

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


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 亚洲小视频在线 | 久久久日本精品一区二区三区 | 69日本人xxxx16-18 | 亚洲欧美日本国产综合在线 | 国产欧美一区二区精品性色99 | 国产精品免费久久久久影院小说 | 久操视频在线免费观看 | 精品免费久久久久国产一区 | 国产在线精品一区免费香蕉 | 成人毛片一区二区三区 | 亚洲图片欧美另类 | 亚洲成人在线视频观看 | 亚洲精品第一页中文字幕 | 色婷婷综合久久久久中文一区二区 | 五月婷婷视频 | 香蕉久久一区二区三区 | 4虎在线| 看真人视频一级毛片 | 2022国产91精品久久久久久 | 人人爱天天做夜夜爽2020麻豆 | 国产日产精品久久久久快鸭 | 伊人久久中文 | 爱视频福利网 | 爱爱免费观看高清视频在线播放 | 黑人巨大精品战中国美女 | 欧美成人毛片在线视频 | 日本一区精品久久久久影院 | 欧美日韩激情在线 | 婷婷中文网 | 国产一区精品在线 | 日本精品中文字幕在线不卡 | 日本不卡一区二区三区视频 | 久草最新网址 | 午夜看一级特黄a大片黑 | 国产一区二区三区四 | 97色97色97色成人 | 狠狠操综合网 | 色噜噜狠狠色综合免费视频 | 天天干天天干天天 | 国产精品视频在线观看 | 99精品国产高清一区二区麻豆 |