python如何读写json数据


Posted in Python onMarch 21, 2018

本文实例为大家分享了python读写json数据的具体代码,供大家参考,具体内容如下

案例:

在web应用中常常用到json数据进行传输数据,本质上是字典类型数据转换成字符串,通过字符串进行网页传输,然后把接收到的字符串转换成字典类似数据

需求:实现字典转换成字符串,字符串转换成字典数据类型,写入文件

如何做?

1、明确dumps和dump的区别,dump的接口是文件,直接写入文件,dumps把对应的数据类型转换成字符串,loads 和dumps相反,load直接从文件中读取文件并把数据转换成对应的数据类型
2、先进行数据转换,字符串作为中间桥梁

#!/usr/bin/python3
 
import json
 
 
def w_json(data):
  # 往文件中写入json文件
  with open('json_test.json', 'w') as wf:
    json.dump(data, wf)
  print('ok')
  
     
def r_json():
  # 读取json文件
  with open('json_test.json', 'r') as rf:
    data = json.load(rf)
  return data
 
 
def chage_data(data):
  # 进行json数据转换
  try:
    # separators 会把对应符号前后的空格去掉,网络传输中,空格没有意义
    # 还可以通过sort_keys进行按字典可以排序,字典才有效,网络传输一般都用json数据格式
    return json.dumps(data, separators=[',', ':'], sort_keys=True)
  except Exception as e:
    print(e)
    return None
   
if __name__ == '__main__':
  d = {'xiao_ming': 18, 'xiao_er': 50, 'xiao_san': 17, 'xu_xue': None, 'b_l':True}
  # d = [8, 2, 2, 7, 0, None, True]
  data = chage_data(d)
   
  if data:
    w_json(data)
    r_data = r_json()
    print('读取的数据:', r_data)

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

Python 相关文章推荐
python实现划词翻译
Apr 23 Python
wxPython中文教程入门实例
Jun 09 Python
Python读取properties配置文件操作示例
Mar 29 Python
python生成ppt的方法
Jun 07 Python
Python日期时间模块datetime详解与Python 日期时间的比较,计算实例代码
Sep 14 Python
Python中 Global和Nonlocal的用法详解
Jan 20 Python
使用Tensorflow实现可视化中间层和卷积层
Jan 24 Python
Python 实现黑客帝国中的字符雨的示例代码
Feb 20 Python
详解python常用命令行选项与环境变量
Feb 20 Python
python opencv把一张图片嵌入(叠加)到另一张图片上的实现代码
Jun 11 Python
python反扒机制的5种解决方法
Feb 06 Python
深入理解Pytorch微调torchvision模型
Nov 11 Python
python如何读写csv数据
Mar 21 #Python
python如何让类支持比较运算
Mar 20 #Python
python如何为创建大量实例节省内存
Mar 20 #Python
python如何对实例属性进行类型检查
Mar 20 #Python
python如何在循环引用中管理内存
Mar 20 #Python
Windows 7下Python Web环境搭建图文教程
Mar 20 #Python
Python中%是什么意思?python中百分号如何使用?
Mar 20 #Python
You might like
php实现建立多层级目录的方法
2014/07/19 PHP
php常量详细解析
2015/10/27 PHP
CodeIgniter整合Smarty的方法详解
2017/08/25 PHP
Javascript String对象扩展HTML编码和解码的方法
2009/06/02 Javascript
JQuery 浮动导航栏实现代码
2009/08/27 Javascript
JavaScript性能优化 创建文档碎片(document.createDocumentFragment)
2010/07/13 Javascript
js 获取时间间隔实现代码
2014/05/12 Javascript
一个JavaScript防止表单重复提交的实例
2014/10/21 Javascript
Javascript学习笔记之数组的遍历和 length 属性
2014/11/23 Javascript
Jquery插件实现点击获取验证码后60秒内禁止重新获取
2015/03/13 Javascript
javascript设计简单的秒表计时器
2020/09/05 Javascript
5个最顶级jQuery图表类库插件【jquery插件库】
2016/05/05 Javascript
详解NodeJS框架express的路径映射(路由)功能及控制
2017/03/24 NodeJs
微信小程序实现图片懒加载的示例代码
2017/12/13 Javascript
node.js自动上传ftp的脚本分享
2018/06/16 Javascript
Vue实现底部侧边工具栏的实例代码
2018/09/03 Javascript
npm scripts 使用指南详解
2018/10/08 Javascript
微信小程序公用参数与公用方法用法示例
2019/01/09 Javascript
vue组件间通信六种方式(总结篇)
2019/05/15 Javascript
用python删除java文件头上版权信息的方法
2014/07/31 Python
Python 将pdf转成图片的方法
2018/04/23 Python
python二维列表一维列表的互相转换实例
2018/07/02 Python
我就是这样学习Python中的列表
2019/06/02 Python
使用Python打造一款间谍程序的流程分析
2020/02/21 Python
解决paramiko执行命令超时的问题
2020/04/16 Python
Dr. Martens马汀博士澳大利亚官网:马丁靴鼻祖
2019/07/02 全球购物
广播电视新闻学专业应届生求职信
2013/10/08 职场文书
中英双版中文教师求职信
2013/10/27 职场文书
违反课堂纪律检讨书
2014/01/19 职场文书
微电影大赛策划方案
2014/06/05 职场文书
七年级上册语文教学计划
2015/01/22 职场文书
简历中自我评价范文
2015/03/11 职场文书
2015年监理个人工作总结
2015/05/23 职场文书
党员证明模板
2015/06/19 职场文书
SQLServer2019 数据库的基本使用之图形化界面操作的实现
2021/04/08 SQL Server
Go语言-为什么返回值为接口类型,却返回结构体
2021/04/24 Golang