Json中dumps、loads、dump、load函數執行個體講解

來源:互聯網
上載者:User

標籤:json.js   兩種方法   讀取   EDA   執行   轉化   for   col   寫入   

1.dumps()

     1. json.dumps()

  用於將字典(dic)類型的資料轉成字串(str),直接將dict類型的資料寫入json檔案中會發生報錯,因此在將資料寫入時需要用到該函數。

import json name = {‘aa‘:‘1111‘,‘bb‘:‘2222‘,‘cc‘:‘3333‘,‘dc‘:‘4444‘}  jsObj = json.dumps(name)     print(name)print(jsObj) print(type(name))print(type(jsObj))

  運行後結果如下;

{‘aa‘: ‘1111‘, ‘cc‘: ‘3333‘, ‘bb‘: ‘2222‘, ‘dd‘: ‘4444‘}{"aa": "1111", "cc": "3333", "bb": "2222", "dd": "4444"}<type ‘dict‘><type ‘str‘>

寫入JSON檔案後執行時會發生錯誤:

import json    name = {‘aa‘:‘1111‘,‘bb‘:‘2222‘,‘cc‘:‘3333‘,‘dd‘:‘4444‘}            emb_filename = (‘/home/cqh/faceData/emb_json.json‘)    # jsObj = json.dumps(name_emb)    //未進行函數轉化時  with open(emb_filename, "w") as f:      f.write(name)      f.close()  
未進行函數轉化時,系統報錯,當加入該函數的時候系統運行正常。

2.json.loads()

          json.loads()用於將str類型的資料轉成dict。

import json nameb = {‘aa‘:‘1111‘,‘bb‘:‘2222‘,‘cc‘:‘3333‘,‘d‘:‘4444‘}  jsDumps = json.dumps(name)     jsLoads = json.loads(jsDumps)  print(name)print(jsDumps)print(jsLoads) print(type(name))print(type(jsDumps))print(type(jsLoads))     

運行結果:

{‘aa‘: ‘1111‘, ‘cc‘: ‘3333‘, ‘bb‘: ‘2222‘, ‘dd‘: ‘4444‘}{"aa": "1111", "cc": "3333", "bb": "2222", "dd": "4444"}{u‘aa‘: u‘1111‘, u‘cc‘: u‘3333‘, u‘bb‘: u‘2222‘, u‘dd‘: u‘4444‘}<type ‘dict‘><type ‘str‘><type ‘dict‘>

 3、json.dump()

         json.dump()用於將dict類型的資料轉成str,並寫入到json檔案中。下面兩種方法都可以將資料寫入json檔案

import json    name_emb = {‘a‘:‘1111‘,‘b‘:‘2222‘,‘c‘:‘3333‘,‘d‘:‘4444‘}            emb_filename = (‘/home/cqh/faceData/emb_json.json‘)   # solution 1jsObj = json.dumps(name_emb)    with open(emb_filename, "w") as f:      f.write(jsObj)      f.close()      # solution 2   json.dump(name_emb, open(emb_filename, "w"))

4、json.load()

          json.load()用於從json檔案中讀取資料。

 1 import json   2   3 emb_filename = (‘/home/cqh/faceData/emb_json.json‘)   4   5 jsObj = json.load(open(emb_filename))     6   7 print(jsObj) 8 print(type(jsObj)) 9  10 for key in jsObj.keys():11     print(‘key: %s   value: %s‘ % (key,jsObj.get(key)))

 運行結果如下:

{u‘a‘: u‘1111‘, u‘c‘: u‘3333‘, u‘b‘: u‘2222‘, u‘d‘: u‘4444‘}<type ‘dict‘>key: a   value: 1111key: c   value: 3333key: b   value: 2222key: d   value: 4444

 

Json中dumps、loads、dump、load函數執行個體講解

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.