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中的__init__和__new__
Mar 12 Python
用Python编写一个每天都在系统下新建一个文件夹的脚本
May 04 Python
python 基础教程之Map使用方法
Jan 17 Python
Python面向对象之继承代码详解
Jan 29 Python
Python装饰器用法实例总结
May 26 Python
python中验证码连通域分割的方法详解
Jun 04 Python
Python+selenium 获取一组元素属性值的实例
Jun 22 Python
python实现证件照换底功能
Aug 20 Python
django 多数据库及分库实现方式
Apr 01 Python
python实现将列表中各个值快速赋值给多个变量
Apr 02 Python
Python+Selenium实现自动化的环境搭建的步骤(图文)
Sep 01 Python
Python移位密码、仿射变换解密实例代码
Jun 27 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
html中select语句读取mysql表中内容
2006/10/09 PHP
php将字符串转换成16进制的方法
2015/03/17 PHP
PHP判断文件是否被引入的方法get_included_files用法示例
2016/11/29 PHP
PHP面向对象之里氏替换原则简单示例
2018/04/08 PHP
Jquery Ajax 学习实例2 向页面发出请求 返回JSon格式数据
2010/03/15 Javascript
网站404页面3秒后跳到首页的实例代码
2013/08/16 Javascript
js基本算法:冒泡排序,二分查找的简单实例
2016/10/08 Javascript
vue数据双向绑定原理解析(get & set)
2017/03/08 Javascript
微信小程序新增的拖动组件movable-view使用教程
2017/05/20 Javascript
JS中Object对象的原型概念基础
2018/01/29 Javascript
基于vue-cli vue-router搭建底部导航栏移动前端项目
2018/02/28 Javascript
使用Vue自定义指令实现Select组件
2018/05/24 Javascript
Laravel admin实现消息提醒、播放音频功能
2019/07/10 Javascript
浅析Vue下的components模板使用及应用
2019/11/27 Javascript
JS实现随机点名器
2020/04/12 Javascript
Python的装饰器用法学习笔记
2016/06/24 Python
python实现获取Ip归属地等信息
2016/08/27 Python
Python set常用操作函数集锦
2017/11/15 Python
python多进程控制学习小结
2018/10/31 Python
情人节快乐! python绘制漂亮玫瑰
2020/08/18 Python
Python基础之文件读取的讲解
2019/02/16 Python
PYQT5设置textEdit自动滚屏的方法
2019/06/14 Python
python递归法解决棋盘分割问题
2019/07/17 Python
python爬虫刷访问量 2019 7月
2019/08/01 Python
Python使用Opencv实现图像特征检测与匹配的方法
2019/10/30 Python
详解HTML5中的拖放事件(Drag 和 drop)
2016/11/14 HTML / CSS
英国的知名精品百货公司:House of Fraser(福来德)
2016/08/14 全球购物
贝佳斯官方网站:Borghese
2020/05/08 全球购物
植树节活动总结
2014/04/30 职场文书
公司任命书模板
2014/06/06 职场文书
电子商务专业毕业生求职信
2014/06/12 职场文书
中文专业求职信
2014/06/20 职场文书
未受刑事制裁公证证明
2014/09/20 职场文书
运动会铅球比赛加油稿
2014/09/26 职场文书
优秀班主任事迹材料
2014/12/16 职场文书
实习生个人总结范文
2015/02/28 职场文书