Python json读写方式和字典相互转化


Posted in Python onApril 18, 2020

在Python中,json指的是符合json语法格式的字符串,可以单行或者多行。

它可以方便的在使用在多种语言中,这里介绍的是在python中的字典(dict)与json字符串相互转化的方式。

1. 导入json包

import json

2. 初始化一个字典数据

dict_ = {
  'name': 'Jack', 
  'age': 22, 
  'skills': ['Python', 'Java', 'C++', 'Matlab'], 
  'major': '计算机技术',
  'english': '英语六级',
  'school': 'WIT'
}

3.json.dumps(字典):将字典转为JSON字符串

# 1. json.dumps(字典):将字典转为JSON字符串,indent为多行缩进空格数,
# sort_keys为是否按键排序,ensure_ascii=False为不确保ascii,及不将中文等特殊字符转为\uXXX等
json_dict = json.dumps(dict_)
print(json_dict)

Python json读写方式和字典相互转化

很明显中文字符被转化了,于是使用:ensure_ascii=False

# 行缩进和键值排序
json_dict_2 = json.dumps(dict_, indent=2, sort_keys=True, ensure_ascii=False)
print(json_dict_2)

Python json读写方式和字典相互转化

3.json.loads(json串),将json字符串转化成字典

dict_from_str = json.loads(json_dict)
print(dict_from_str)

dict_from_str_2 = json.loads(json_dict_2)
print(dict_from_str_2)

Python json读写方式和字典相互转化

4.json.dump,把字典转换成json字符串并存储在文件中,结果文件如下图:

with open("write_json.json", "w", encoding='utf-8') as f:
  # json.dump(dict_, f) # 写为一行
  json.dump(dict_, f, indent=2, sort_keys=True, ensure_ascii=False) # 写为多行

Python json读写方式和字典相互转化

5.json.load,从文件打开json数据转换成字典

with open("write_json.json", encoding="utf-8") as f:
  json_file = json.load(f)
print(json_file)

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python中删除文件的程序代码
Mar 13 Python
Python自定义主从分布式架构实例分析
Sep 19 Python
基于python3 类的属性、方法、封装、继承实例讲解
Sep 19 Python
python爬虫中get和post方法介绍以及cookie作用
Feb 08 Python
python3下实现搜狗AI API的代码示例
Apr 10 Python
基于python实现简单日历
Jul 28 Python
详解python和matlab的优势与区别
Jun 28 Python
使用pip安装python库的多种方式
Jul 31 Python
Python 中pandas索引切片读取数据缺失数据处理问题
Oct 09 Python
python产生模拟数据faker库的使用详解
Nov 04 Python
Python编写万花尺图案实例
Jan 03 Python
Python之Matplotlib绘制热力图和面积图
Apr 13 Python
Python figure参数及subplot子图绘制代码
Apr 18 #Python
Python数组拼接np.concatenate实现过程
Apr 18 #Python
Python稀疏矩阵及参数保存代码实现
Apr 18 #Python
Python try except异常捕获机制原理解析
Apr 18 #Python
Python数据正态性检验实现过程
Apr 18 #Python
如何基于线程池提升request模块效率
Apr 18 #Python
新建文件时Pycharm中自动设置头部模板信息的方法
Apr 17 #Python
You might like
Fedora下安装php Redis扩展笔记
2014/09/03 PHP
PHP中使用file_get_contents抓取网页中文乱码问题解决方法
2014/12/17 PHP
PHP答题类应用接口实例
2015/02/09 PHP
PHP中empty和isset对于参数结构的判断及empty()和isset()的区别
2015/11/15 PHP
PHP实现的支付宝支付功能示例
2019/03/26 PHP
jQuery select的操作实现代码
2009/05/06 Javascript
使用jquery清空、复位整个输入域
2015/04/02 Javascript
充分发挥Node.js程序性能的一些方法介绍
2015/06/23 Javascript
javascript实现延时显示提示框特效代码
2016/04/27 Javascript
javascript正则表达式之分组概念与用法实例
2016/06/16 Javascript
js实现消息滚动效果
2017/01/18 Javascript
jQuery实现单击按钮遮罩弹出对话框效果(2)
2017/02/20 Javascript
Javascript ES6中数据类型Symbol的使用详解
2017/05/02 Javascript
bootstrap选项卡扩展功能详解
2017/06/14 Javascript
JS 学习总结之正则表达式的懒惰性和贪婪性
2017/07/03 Javascript
使用 Node.js 实现图片的动态裁切及算法实例代码详解
2018/09/29 Javascript
微信小程序带动画弹窗组件使用方法详解
2018/11/27 Javascript
VUE解决 v-html不能触发点击事件的问题
2019/10/28 Javascript
js验证账户名是否重复
2020/05/26 Javascript
python实现网页链接提取的方法分享
2014/02/25 Python
Python 3.x 连接数据库示例(pymysql 方式)
2017/01/19 Python
Python学生成绩管理系统简洁版
2020/04/05 Python
pyside+pyqt实现鼠标右键菜单功能
2020/12/08 Python
pyqt5实现登录界面的模板
2020/05/30 Python
python字符串下标与切片及使用方法
2020/02/13 Python
python实现五子棋程序
2020/04/24 Python
python 瀑布线指标编写实例
2020/06/03 Python
python能在浏览器能运行吗
2020/06/17 Python
Python接口测试环境搭建过程详解
2020/06/29 Python
Bally巴利英国官网:经典瑞士鞋履、手袋及配饰奢侈品牌
2018/05/07 全球购物
上海天奕面试题笔试题
2015/04/19 面试题
远程教育心得体会
2014/01/03 职场文书
运动会搞笑广播稿
2014/10/14 职场文书
2014年党支部书记工作总结
2014/12/04 职场文书
项目安全员岗位职责
2015/02/15 职场文书
Nginx源码编译安装过程记录
2021/11/17 Servers