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实现迭代时使用索引的方法示例
Jun 05 Python
Python sorted函数详解(高级篇)
Sep 18 Python
使用Python的toolz库开始函数式编程的方法
Nov 15 Python
在python中使用xlrd获取合并单元格的方法
Dec 26 Python
python使用 zip 同时迭代多个序列示例
Jul 06 Python
python基于Selenium的web自动化框架
Jul 14 Python
python飞机大战pygame碰撞检测实现方法分析
Dec 17 Python
Python yield的用法实例分析
Mar 06 Python
python模拟斗地主发牌
Apr 22 Python
python中有帮助函数吗
Jun 19 Python
python实现图像随机裁剪的示例代码
Dec 10 Python
python本地文件服务器实例教程
May 02 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
人大复印资料处理程序_输入篇
2006/10/09 PHP
php检测用户是否用手机(Mobile)访问网站的类
2014/01/09 PHP
php截取html字符串及自动补全html标签的方法
2015/01/15 PHP
分享别人写的一个小型js框架
2007/08/13 Javascript
由document.body和document.documentElement想到的
2009/04/13 Javascript
不同浏览器对回车提交表单的处理办法
2010/02/13 Javascript
javascript简单实现命名空间效果
2014/03/06 Javascript
javascript数组操作总结和属性、方法介绍
2014/04/05 Javascript
js中定义一个变量并判断其是否为空的方法
2014/05/13 Javascript
Js+Jq获取URL参数的集中方法示例代码
2014/05/20 Javascript
jquery简单图片切换显示效果实现方法
2015/01/14 Javascript
JS获取Table中td值的方法
2015/03/19 Javascript
CSS图片响应式 垂直水平居中
2015/08/14 Javascript
javascript原生ajax写法分享
2016/04/10 Javascript
javascript弹出带文字信息的提示框效果
2016/07/19 Javascript
详解webpack分包及异步加载套路
2017/06/29 Javascript
JavaScript正则表达式校验与递归函数实际应用实例解析
2017/08/04 Javascript
Angular 作用域scope的具体使用
2017/12/11 Javascript
python+django快速实现文件上传
2016/10/24 Python
Python删除Java源文件中全部注释的实现方法
2017/08/30 Python
Python线性回归实战分析
2018/02/01 Python
使用pandas对矢量化数据进行替换处理的方法
2018/04/11 Python
python文件操作之批量修改文件后缀名的方法
2018/08/10 Python
对python 操作solr索引数据的实例详解
2018/12/07 Python
python3 property装饰器实现原理与用法示例
2019/05/15 Python
python程序变成软件的实操方法
2019/06/24 Python
Python实现一个简单的递归下降分析器
2020/08/01 Python
Python基于内置函数type创建新类型
2020/10/22 Python
如何在Canvas中添加事件的方法示例
2019/05/21 HTML / CSS
ParcelABC西班牙:包裹运送和快递服务
2019/12/24 全球购物
中文专业求职信
2014/06/20 职场文书
2014年自愿离婚协议书范本
2014/09/25 职场文书
合伙购房协议样本
2014/10/06 职场文书
延安红色之旅心得体会
2014/10/07 职场文书
工伤死亡理赔协议书
2014/10/20 职场文书
幼儿园教研工作总结2015
2015/05/12 职场文书