详解python中的json和字典dict


Posted in Python onJune 22, 2018

定义

python中,json和dict非常类似,都是key-value的形式,而且json、dict也可以非常方便的通过dumps、loads互转。既然都是key-value格式,为啥还需要进行格式转换?

json(JavaScript Object Notation)

json:是一种数据格式,是纯字符串。可以被解析成Python的dict或者其他形式。

dict:是一个完整的数据结构,是对Hash Table这一数据结构的一种实现,是一套从存储到提取都封装好了的方案。它使用内置的哈希函数来规划key对应value的存储位置,从而获得O(1)的数据读取速度。

json和dict对比

  • json的key只能是字符串,python的dict可以是任何可hash对象(hashtable type);
  • json的key可以是有序、重复的;dict的key不可以重复。
  • json的value只能是字符串、浮点数、布尔值或者null,或者它们构成的数组或者对象。
  • json任意key存在默认值undefined,dict默认没有默认值;
  • json访问方式可以是[],也可以是.,遍历方式分in、of;dict的value仅可以下标访问。
  • json的字符串强制双引号,dict字符串可以单引号、双引号;
  • dict可以嵌套tuple,json里只有数组。
  • json:true、false、null
  • python:True、False、None
  • json中文必须是unicode编码,如"\u6211".
  • json的类型是字符串,字典的类型是字典。

hashtable

一个对象当其声明周期内的hash值不发生改变,而且可以跟其他对象进行比较时,这个对象就是hashtable的。

1、python中的基本类型都是Hashtable,如str、bytes、数字类型、tuple等; 
2、用户自定义的类型默认都是hashtable,因为它们的hash值就是id()值; 
3、frozenset始终都是hashtable的,因为它们所有的项目都是被定义成hashtable的; 
4、只有当tuple内的所有项都是hashtable的时候,tuple才是hashtable;

总结

以上所述是小编给大家介绍的on中的json和字典dict,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Python 相关文章推荐
Python语言描述KNN算法与Kd树
Dec 13 Python
python3爬取淘宝信息代码分析
Feb 10 Python
让Django支持Sql Server作后端数据库的方法
May 29 Python
Python正则表达式指南 推荐
Oct 09 Python
详解Python time库的使用
Oct 10 Python
win10环境下配置vscode python开发环境的教程详解
Oct 16 Python
tensorflow之tf.record实现存浮点数数组
Feb 17 Python
基于Django OneToOneField和ForeignKey的区别详解
Mar 30 Python
python实现文字版扫雷
Apr 24 Python
python自动提取文本中的时间(包含中文日期)
Aug 31 Python
Python加载数据的5种不同方式(收藏)
Nov 13 Python
七个非常实用的Python工具包总结
Jun 15 Python
python实现雨滴下落到地面效果
Jun 21 #Python
使用python读取csv文件快速插入数据库的实例
Jun 21 #Python
详解python3中tkinter知识点
Jun 21 #Python
Python3用tkinter和PIL实现看图工具
Jun 21 #Python
Python3.4 tkinter,PIL图片转换
Jun 21 #Python
Python3实现转换Image图片格式
Jun 21 #Python
python3实现域名查询和whois查询功能
Jun 21 #Python
You might like
建立动态的WML站点(一)
2006/10/09 PHP
PHP使用Pthread实现的多线程操作实例
2015/11/14 PHP
轻松实现php文件上传功能
2017/02/17 PHP
PHP实现一个轻量级容器的方法
2019/01/28 PHP
分享10篇优秀的jQuery幻灯片制作教程及应用案例
2011/04/16 Javascript
jQuery中创建实例与原型继承揭秘
2011/12/21 Javascript
JAVASCRIPT车架号识别/验证函数代码 汽车车架号验证程序
2012/01/08 Javascript
jquery提交form表单时禁止重复提交的方法
2014/02/13 Javascript
js/jquery判断浏览器的方法小结
2014/09/02 Javascript
js获取时间并实现字符串和时间戳之间的转换
2015/01/05 Javascript
基于jQuery实现多层次的手风琴效果附源码
2015/09/21 Javascript
AngularJS之依赖注入模拟实现
2016/08/19 Javascript
本地Bootstrap文件字体图标引入却无法显示问题的解决方法
2020/04/18 Javascript
微信小程序 使用腾讯地图SDK详解及实现步骤
2017/02/28 Javascript
JavaScript中最常见的三个面试题解析
2017/03/04 Javascript
Three.js利用Detector.js插件如何实现兼容性检测详解
2017/09/26 Javascript
解决layui中table异步数据请求不支持自定义返回数据格式的问题
2018/08/19 Javascript
Webpack中SplitChunksPlugin 配置参数详解
2020/03/24 Javascript
基于JavaScript实现十五拼图代码实例
2020/04/26 Javascript
用python结合jieba和wordcloud实现词云效果
2017/09/05 Python
Python如何处理大数据?3个技巧效率提升攻略(推荐)
2019/04/15 Python
Appium+python自动化怎么查看程序所占端口号和IP
2019/06/14 Python
对python中url参数编码与解码的实例详解
2019/07/25 Python
python函数装饰器之带参数的函数和带参数的装饰器用法示例
2019/11/06 Python
Python进程Multiprocessing模块原理解析
2020/02/28 Python
详解canvas绘制网络字体几种方法
2019/08/27 HTML / CSS
Parts Express:音频、视频和扬声器的第一来源
2017/04/25 全球购物
英国一家集合了众多有才华设计师品牌的奢侈店:Wolf & Badger
2018/04/18 全球购物
英国123鲜花网站:123 Flowers
2019/07/07 全球购物
Tessabit日本:集世界奢侈品和设计师品牌的意大利精品买手店
2020/01/07 全球购物
大学生活动策划方案
2014/02/10 职场文书
2014年酒店工作总结范文
2014/11/17 职场文书
教师工作表现自我评价
2015/03/05 职场文书
教师节班会开场白
2015/06/01 职场文书
党组织结对共建协议书
2016/03/23 职场文书
Java生成日期时间存入Mysql数据库的实现方法
2022/03/03 Java/Android