python字典与json转换_python字典与json转换的方法总结
在python中json分別由列表和字典組成,本文主要介紹python中字典與json相互轉(zhuǎn)換的方法。使用json.dumps可以把字典轉(zhuǎn)成json字符串。使用json.loads可以把json字符串轉(zhuǎn)為字典類型的數(shù)據(jù)。
1、字典轉(zhuǎn)json
使用json.dumps
json.dumps是對python對象編碼成json對象,可以把字典轉(zhuǎn)成json字符串。
方法格式
#字典轉(zhuǎn)換成json字符串
json.dumps(dict)
實例
# 創(chuàng)建字典
info_dict = {'name': 'Joe', 'age': 20, 'job': 'driver'}
# dumps 將數(shù)據(jù)轉(zhuǎn)換成字符串
info_json = json.dumps(info_dict,sort_keys=False, indent=4, separators=(',', ': '))
# 顯示數(shù)據(jù)類型
print(type(info_json))
f = open('info.json', 'w')
f.write(info_json)
2、json轉(zhuǎn)字典
使用json.loads
json.loads是將json對象解碼成python對象,即用于將字典類型的數(shù)據(jù)轉(zhuǎn)成json字符串。
方法格式
#json字符串轉(zhuǎn)換成字典
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字符串相互轉(zhuǎn)化的實例擴展
import json
"""
dumps:將python中的字典轉(zhuǎn)換為字符串
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': '微軟雅黑', 'fontSize': 12, 'BaseSettings': {'font': 1, 'size': {'length': 40, 'wigth': 30}}}
print(type(json_dict))
print(json_dict)
json_str = json.dumps(json_dict)
print(type(json_str))
print(json_str)
"""
dump:將數(shù)據(jù)寫入json文件中
"""
def json_dump():
json_dict = {'fontFamily': '微軟雅黑', 'fontSize': 12, 'BaseSettings': {'font': 1, 'size': {'length': 40, 'wigth': 30}}}
with open("../file/record.json", "w")as f:
json.dump(json_dict, f)
print("finished")
"""
loads:將字符串轉(zhuǎn)換為字典
output:
{"fontFamily": "微軟雅黑", "fontSize": 12, "BaseSettings": {"font": 1, "size": {"length": 40, "wigth": 30}}}
{'fontFamily': '微軟雅黑', 'fontSize': 12, 'BaseSettings': {'font': 1, 'size': {'length': 40, 'wigth': 30}}}
"""
def json_loads():
json_str = '{"fontFamily": "\u5fae\u8f6f\u96c5\u9ed1", "fontSize": 12, "BaseSettings": {"font": 1, "size": {"length": 40, "wigth": 30}}}'
print(type(json_str))
print(json_str)
json_dict = json.loads(json_str)
print(type(json_dict))
print(json_dict)
"""
load:讀文件,并把字符串變換為Python數(shù)據(jù)類型
output:
40
{'fontFamily': '微軟雅黑', 'fontSize': 12, 'BaseSettings': {'font': 1, 'size': {'length': 40, '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()
到此這篇關(guān)于python字典與json轉(zhuǎn)換的方法總結(jié)的文章就介紹到這了,更多相關(guān)python中字典與json相互轉(zhuǎn)換的方法內(nèi)容請搜索我們以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持我們!
本文標(biāo)題: python字典與json轉(zhuǎn)換的方法總結(jié)
本文地址: http://www.cppcns.com/jiaoben/python/371641.html
總結(jié)
以上是生活随笔為你收集整理的python字典与json转换_python字典与json转换的方法总结的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python含多个附件的邮件_Pytho
- 下一篇: aj1芝加哥多少钱啊?