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正则表达式修复网站文章字体不统一的解决方法
Feb 21 Python
跟老齐学Python之有点简约的元组
Sep 24 Python
简单介绍利用TK在Python下进行GUI编程的教程
Apr 13 Python
Python编程实现的简单Web服务器示例
Jun 22 Python
使用python将请求的requests headers参数格式化方法
Jan 02 Python
Python利用scapy实现ARP欺骗的方法
Jul 23 Python
Python 调用 Outlook 发送邮件过程解析
Aug 08 Python
python同义词替换的实现(jieba分词)
Jan 21 Python
Django choices下拉列表绑定实例
Mar 13 Python
Django 解决开发自定义抛出异常的问题
May 21 Python
如何使用python记录室友的抖音在线时间
Jun 29 Python
Python 详解通过Scrapy框架实现爬取百度新冠疫情数据流程
Nov 11 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
Discuz! Passport 通行证整合
2008/03/27 PHP
php 生成静态页面的办法与实现代码详细版
2010/02/15 PHP
Drupal7连接多个数据库及常见问题解决
2014/03/02 PHP
PHP中两个float(浮点数)比较实例分析
2015/09/27 PHP
PHP编程实现计算抽奖概率算法完整实例
2017/08/09 PHP
PHP时间戳和日期相互转换操作实例小结
2018/12/18 PHP
JS小功能(button选择颜色)简单实例
2013/11/29 Javascript
对JavaScript客户端应用编程的一些建议
2015/06/24 Javascript
AngularJS 最常用的功能汇总
2016/02/17 Javascript
web 屏蔽BackSpace键实例代码
2016/12/24 Javascript
js实现弹窗暗层效果
2017/01/16 Javascript
nodejs实现爬取网站图片功能
2017/12/14 NodeJs
尝试自己动手用react来写一个分页组件(小结)
2018/02/09 Javascript
element-ui 设置菜单栏展开的方法
2018/08/22 Javascript
vue开发环境配置跨域的方法步骤
2019/01/16 Javascript
浅谈监听单选框radio改变事件(和layui中单选按钮改变事件)
2019/09/10 Javascript
node.js使用mongoose操作数据库实现购物车的增、删、改、查功能示例
2019/12/23 Javascript
JavaScript实现简单进度条效果
2020/03/25 Javascript
[04:11]2014DOTA2国际邀请赛 CIS遗憾出局梦想不灭
2014/07/09 DOTA
python检查序列seq是否含有aset中项的方法
2015/06/30 Python
python 解决动态的定义变量名,并给其赋值的方法(大数据处理)
2018/11/10 Python
Python numpy中矩阵的基本用法汇总
2019/02/12 Python
在Python中使用MySQL--PyMySQL的基本使用方法
2019/11/19 Python
手把手教你用纯css3实现轮播图效果实例
2017/05/04 HTML / CSS
Cotton On美国网站:澳洲时装连锁品牌
2016/10/25 全球购物
Servlet如何得到服务器的信息
2015/12/22 面试题
班会关于环保演讲稿
2013/12/29 职场文书
给水工程专业毕业生自荐信
2014/01/28 职场文书
2014年应届大学生毕业自我鉴定
2014/01/31 职场文书
竞选文艺委员演讲稿
2014/04/28 职场文书
工作所在部门证明
2014/09/21 职场文书
小学生安全教育心得体会
2016/01/15 职场文书
描写九月优美句子(39条)
2019/09/11 职场文书
SQL 窗口函数实现高效分页查询的案例分析
2021/05/21 SQL Server
go xorm框架的使用
2021/05/22 Golang
bose降噪耳机音能消除人声吗
2022/04/19 数码科技