1. 程式人生 > 程式設計 >python字典與json轉換的方法總結

python字典與json轉換的方法總結

在python中json分別由列表和字典組成,本文主要介紹python中字典與json相互轉換的方法。使用json.dumps可以把字典轉成json字串。使用json.loads可以把json字串轉為字典型別的資料。

1、字典轉json

使用json.dumps

json.dumps是對python物件編碼成json物件,可以把字典轉成json字串。

方法格式

#字典轉換成json字串 
json.dumps(dict)

例項

# 建立字典
info_dict = {'name': 'Joe','age': 20,'job': 'driver'}
# dumps 將資料轉換成字串
info_json = json.dumps(info_dict,sort_keys=False,indent=4,separators=(',',': '))
# 顯示資料型別
print(type(info_json))
f = open('info.json','w')
f.write(info_json)

2、json轉字典

使用json.loads

json.loads是將json物件解碼成python物件,即用於將字典型別的資料轉成json字串。

方法格式

#json字串轉換成字典
json.loads(json_str)

使用例項

In [25]: j 
Out[25]: '{"name": "mary","age": 21}' 
In [26]: result = json.loads(j) 
In [27]: result 
Out[27]: {'name': 'mary','age': 21} 
In [28]: type(result) 
Out[28]: dict

python字典和json字串相互轉化的例項擴充套件

import json
"""
dumps:將python中的字典轉換為字串
output:
{'fontFamily': '微軟雅黑','fontSize': 12,'BaseSettings': {'font': 1,'size': {'length': 40,'wigth': 30}}}
{"fontFamily": "\u5fae\u8f6f\u96c5\u9ed1","fontSize": 12,"BaseSettings": {"font": 1,"size": {"length": 40,"wigth": 30}}}
"""
def json_dumps():
json_dict = {'fontFamily': '微軟雅黑','wigth': 30}}}
print(type(json_dict))
print(json_dict)
json_str = json.dumps(json_dict)
print(type(json_str))
print(json_str)
"""
dump:將資料寫入json檔案中
"""
def json_dump():
json_dict = {'fontFamily': '微軟雅黑','wigth': 30}}}
with open("../file/record.json","w")as f:
json.dump(json_dict,f)
print("finished")
"""
loads:將字串轉換為字典
output:
{"fontFamily": "微軟雅黑","wigth": 30}}}
{'fontFamily': '微軟雅黑','wigth': 30}}}
"""
def json_loads():
json_str = '{"fontFamily": "\u5fae\u8f6f\u96c5\u9ed1","wigth": 30}}}'
print(type(json_str))
print(json_str)
json_dict = json.loads(json_str)
print(type(json_dict))
print(json_dict)
"""
load:讀檔案,並把字串變換為Python資料型別
output:
40
{'fontFamily': '微軟雅黑','wigth': 30}}}
"""
def json_load():
f = open("../file/record.json",encoding='utf-8')
setting = json.load(f)
print(setting['BaseSettings']['size']['length'])
setting['BaseSettings']['size']['length'] = 40
print(setting)
if __name__ == '__main__':
json_dumps()
json_dump()
json_loads()
json_load()

到此這篇關於python字典與json轉換的方法總結的文章就介紹到這了,更多相關python中字典與json相互轉換的方法內容請搜尋我們以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援我們!