python字典与json转换的方法总结


Posted in Python onDecember 28, 2020

在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': '微软雅黑', '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:将数据写入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:将字符串转换为字典
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数据类型
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()

到此这篇关于python字典与json转换的方法总结的文章就介绍到这了,更多相关python中字典与json相互转换的方法内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
Python使用scrapy爬取阳光热线问政平台过程解析
Aug 14 Python
Python实现TCP通信的示例代码
Sep 09 Python
pytorch中torch.max和Tensor.view函数用法详解
Jan 03 Python
Anaconda+Pycharm环境下的PyTorch配置方法
Mar 13 Python
django为Form生成的label标签添加class方式
May 20 Python
Numpy中ndim、shape、dtype、astype的用法详解
Jun 14 Python
怎么解决pycharm license Acti的方法
Oct 28 Python
pycharm使用技巧之自动调整代码格式总结
Nov 04 Python
如何在 Matplotlib 中更改绘图背景的实现
Nov 26 Python
python mongo 向数据中的数组类型新增数据操作
Dec 05 Python
如何使用Python进行PDF图片识别OCR
Jan 22 Python
python实现简单区块链结构
Apr 25 Python
python字典按照value排序方法
Dec 28 #Python
python Timer 类使用介绍
Dec 28 #Python
PyChon中关于Jekins的详细安装(推荐)
Dec 28 #Python
python获取天气接口给指定微信好友发天气预报
Dec 28 #Python
详解python 条件语句和while循环的实例代码
Dec 28 #Python
一个非常简单好用的Python图形界面库(PysimpleGUI)
Dec 28 #Python
python函数超时自动退出的实操方法
Dec 28 #Python
You might like
在PHP中使用curl_init函数的说明
2010/11/02 PHP
PHP图片等比例缩放生成缩略图函数分享
2014/06/10 PHP
php基于session实现数据库交互的类实例
2015/08/03 PHP
thinkPHP中session()方法用法详解
2016/12/08 PHP
thinkphp查询,3.X 5.0方法(亲试可行)
2017/06/17 PHP
实例分析10个PHP常见安全问题
2019/07/09 PHP
详细讲解JS节点知识
2010/01/31 Javascript
Jquery调用webService远程访问出错的解决方法
2010/05/21 Javascript
JQuery文本改变触发事件如聚焦事件、失焦事件
2014/01/15 Javascript
jQuery中事件对象e的事件冒泡用法示例介绍
2014/04/25 Javascript
node.js中的http.createServer方法使用说明
2014/12/14 Javascript
jQuery的Scrollify插件实现滑动到页面下一节点
2015/07/05 Javascript
浅谈jQuery中的eq()与DOM中element.[]的区别
2016/10/28 Javascript
详解Vue中过度动画效果应用
2017/05/25 Javascript
Angularjs的$http异步删除数据详解及实例
2017/07/27 Javascript
vue.js组件vue-waterfall-easy实现瀑布流效果
2017/08/22 Javascript
使用Angular CLI进行Build(构建)和Serve详解
2018/03/24 Javascript
javascript写一个ajax自动拦截并下载数据代码实例
2019/09/07 Javascript
浅谈javascript事件环微任务和宏任务队列原理
2020/09/12 Javascript
Pycharm学习教程(4) Python解释器的相关配置
2017/05/03 Python
python中模块查找的原理与方法详解
2017/08/11 Python
python中实现字符串翻转的方法
2018/07/11 Python
利用Python如何批量更新服务器文件
2018/07/29 Python
通过shell+python实现企业微信预警
2019/03/07 Python
Python qqbot 实现qq机器人的示例代码
2019/07/11 Python
Django如何使用第三方服务发送电子邮件
2019/08/14 Python
python 并发下载器实现方法示例
2019/11/22 Python
python爬虫使用requests发送post请求示例详解
2020/08/05 Python
css3制作动态进度条以及附加jQuery百分比数字显示
2012/12/13 HTML / CSS
荷兰领先的百货商店:De Bijenkorf
2018/10/17 全球购物
美国最大的户外装备和服装购物网站:Backcountry
2019/10/15 全球购物
技校教师求职简历的自我评价
2013/10/20 职场文书
应届生自荐信范文
2014/02/21 职场文书
护士年终考核评语
2014/12/31 职场文书
高三复习计划
2015/01/19 职场文书
2015年度酒店客房部工作总结
2015/05/25 职场文书