序列化模块json代码实例详解


Posted in Javascript onMarch 03, 2020

json 模块

json 是一种通用的数据传输格式,本质就是一个字符串

json 要求 {'key':value}

  • key必须是字符串,value只能是: 字典,列表,字符串,数字,bool值
  • 在任何语言中他的type都必须是字符串类型
  • json是所有的变成语言都公认的一种数据类型
  • 如果是python语言要给java语言发送信息,那么就可以转换成json格式,。java经过一系列转换就可以得到数据类型

json序列化(dump/dumps) 和反序列化(load/loads)

import json

dic = {'北京': {'丰台': {}, '海淀': {}}}
print(dic)
dic_str = json.dumps(dic,ensure_ascii=False) # 序列化过程,把字典/其他数据类型转换成字符串,
ensure_ascii=False,如果字典中有中文,希望写入数据中也显示中文,就要添加参数

print(dic_str)

with open('file',mode='w',encoding='utf-8') as f:
  f.write(dic_str)
import json
lst = [1,2,3,4,56]
with open('file',mode='w',encoding='utf-8') as f:
  json.dump(lst,f)

with open('file',mode='r',encoding='utf-8') as f1:
  ret = json.load(f1)
  print(ret)

import pickle

pickle 模块

python语言中特有的序列化模块

import pickle
dic = {'北京':{'朝阳':'昌平'},('天津','河北'):[1,2,3]}
ret = pickle.dumps(dic)
print(ret)

str_d = pickle.loads(ret)
print(str_d)


import pickle

dic = {'北京':{'朝阳':'昌平'},('天津','河北'):[1,2,3]}
with open('file',mode='wb') as f:
  pickle.dump(dic,f)

with open('file',mode='rb') as f1:
  ret = pickle.load(f1)
  print(ret)

pickle 和 json 的区别

1.pickle 支持python中的几乎所有数据类型,但是只能python一门语言中使用

2.json 支持所有的语言,但只支持有限的数据类型

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

Javascript 相关文章推荐
动态刷新 dorado树的js代码
Jun 12 Javascript
比较搞笑的js陷阱题
Feb 07 Javascript
js判断undefined变量类型使用typeof
Jun 03 Javascript
JavaScript中的Math.LN2属性用法详解
Jun 12 Javascript
jQuery实现灰蓝风格标准二级下拉菜单效果代码
Aug 31 Javascript
jQuery插件实现多级联动菜单效果
Dec 01 Javascript
移动适配的几种方案(三种方案)
Nov 25 Javascript
学习使用jQuery表单验证插件和日历插件
Feb 13 Javascript
jquery实现表单获取短信验证码代码
Mar 13 Javascript
JavaScript实现各种排序的代码详解
Aug 28 Javascript
详解http访问解析流程原理
Oct 18 Javascript
Vue项目分环境打包的实现步骤
Apr 02 Javascript
JS常用排序方法实例代码解析
Mar 03 #Javascript
JS面向对象编程实现的Tab选项卡案例详解
Mar 03 #Javascript
JS面向对象编程基础篇(三) 继承操作实例详解
Mar 03 #Javascript
小程序接入腾讯位置服务的详细流程
Mar 03 #Javascript
vue.js this.$router.push获取不到params参数问题
Mar 03 #Javascript
JS面向对象编程基础篇(二) 封装操作实例详解
Mar 03 #Javascript
Vue axios与Go Frame后端框架的Options请求跨域问题详解
Mar 03 #Javascript
You might like
粗略计算在线时间,bug:ip相同
2006/12/09 PHP
php 计划任务 检测用户连接状态
2012/03/29 PHP
Win2003+apache+PHP+SqlServer2008 配置生产环境
2014/07/29 PHP
PHP CURL 多线程操作代码实例
2015/05/13 PHP
php微信公众平台开发(四)回复功能开发
2016/12/06 PHP
discuz论坛更换域名,详细文件修改步骤
2020/12/09 PHP
javascript IFrame 强制刷新代码
2009/07/23 Javascript
浅谈Javascript 执行顺序
2013/12/18 Javascript
JavaScript实现两个Table固定表头根据页面大小自行调整
2014/01/03 Javascript
JS实现简单的顶部定时关闭层效果
2014/06/15 Javascript
node.js中的console.assert方法使用说明
2014/12/10 Javascript
JS实现复制内容到剪贴板功能
2017/02/05 Javascript
JavaScript动态绑定详解
2017/09/14 Javascript
基于vue 添加axios组件,解决post传参数为null的问题
2018/03/05 Javascript
基于JavaScript获取base64图片大小
2019/10/18 Javascript
js在HTML的三种引用方式详解
2020/08/29 Javascript
Python实现计算两个时间之间相差天数的方法
2017/05/10 Python
Python对列表中的各项进行关联详解
2017/08/15 Python
Numpy掩码式数组详解
2018/04/17 Python
浅析Python数据处理
2018/05/02 Python
Python 利用内置set函数对字符串和列表进行去重的方法
2018/06/29 Python
python制作mysql数据迁移脚本
2019/01/01 Python
Python实现的多进程拷贝文件并显示百分比功能示例
2019/04/09 Python
Python中请不要再用re.compile了
2019/06/30 Python
python笔记_将循环内容在一行输出的方法
2019/08/08 Python
Python流程控制 if else实现解析
2019/09/02 Python
python子线程退出及线程退出控制的代码
2019/10/16 Python
社区版pycharm创建django项目的方法(pycharm的newproject左侧没有项目选项)
2020/09/23 Python
如何强制垃圾回收
2015/10/06 面试题
中学生检讨书1000字
2014/10/28 职场文书
武侯祠导游词
2015/02/04 职场文书
机关单位保密工作责任书
2015/05/11 职场文书
护理培训心得体会
2016/01/22 职场文书
python实现简易名片管理系统
2021/04/11 Python
Python中的套接字编程是什么?
2021/06/21 Python
《LOL》“克隆大作战”久违归来 幻灵战队皮肤上线
2022/04/03 其他游戏