详解python 3.6 安装json 模块(simplejson)


Posted in Python onApril 02, 2019

JSON 相关概念:

序列化(Serialization):将对象的状态信息转换为可以存储或可以通过网络传输的过程,传输的格式可以是JSON,XML等。反序列化就是从存储区域(JSON,XML)读取反序列化对象的状态,重新创建该对象。

JSON(Java Script Object Notation):一种轻量级数据交互格式,相对于XML而言更简单,也易于阅读和编写,机器也方便解析和生成,Json是JavaScript中的一个子集。

python2.6版本开始加入了JSON模块,python的json模块序列化与反序列化的过程分别是encoding和decoding。

  1. encoding:把一个python对象编码转换成Json字符串。
  2. decoding:把json格式字符串编码转换成python对象。

具体应用:

json提供四个功能:dumps, dump, loads, load

dumps功能 :将数据通过特殊的形式转换为所有程序语言都认识的字符串

>>> import simplejson
>>> data =['aa','bb','cc']
>>> j_str = simplejsondumps(data)
Traceback (most recent call last):
 File "<stdin>", line 1, in <module>
NameError: name 'simplejsondumps' is not defined
>>> j_str = simplejson.dumps(data)
>>> j_str
'["aa", "bb", "cc"]'

loads功能 : 将json编码的字符串再转换为python的数据结构

>>> mes = simplejson.load(j_str)
Traceback (most recent call last):
 File "<stdin>", line 1, in <module>
 File "D:\Program Files\python\lib\site-packages\simplejson\__init__.py", line 455, in load
  return loads(fp.read(),
AttributeError: 'str' object has no attribute 'read'
>>> mes = simplejson.loads(j_str)
>>> mes
['aa', 'bb', 'cc']
# dump功能
# 将数据通过特殊的形式转换为所有程序语言都认识的字符串,并写入文件
with open('D:/tmp.json', 'w') as f:
  simplejson.dump(data, f)
# load功能
 # 从数据文件中读取数据,并将json编码的字符串转换为python的数据结构
 with open('D:/tmp.json', 'r') as f:
   data = simplejson.load(f)

json编码支持的基本类型有:None, bool, int, float, string, list, tuple, dict.

对于字典,json会假设key是字符串(字典中的任何非字符串key都会在编码时转换为字符串),要符合JSON规范,应该只对python列表和字典进行编码。此外,在WEB应用中,把最顶层对象定义为字典是一种标准做法。

json编码的格式几乎和python语法一致,略有不同的是:True会被映射为true,False会被映射为false,None会被映射为null,元组()会被映射为列表[],因为其他语言没有元组的概念,只有数组,也就是列表。

>>> import simplejson
 >>> data = {'a':True, 'b':False, 'c':None, 'd':(1,2), 1:'abc'}
 >>> j_str = simplejson.dumps(data)
 >>> j_str
 '{"a": true, "c": null, "d": [1, 2], "b": false, "1": "abc"}'

Simpeljson 模块安装

开发环境:windows10、Python3.5、DJango1.11.1

第一步:首先,下载对应simplejson的 .whl文件,下载地址:http://www.lfd.uci.edu/~gohlke/pythonlibs/#simplejson

第二步:打开cmd,进入到Python安装目录的Scripts文件夹中.比如:D:\Program Files\Python\Scripts。使用pip安装刚刚下载好的whl文件,pip.exe install *.whl,例如:

D:\Program Files\python\Scripts>pip.exe install D:\python\simplejson-3.10.0-cp36-cp36m-win_amd64.whl
Processing d:\python\simplejson-3.10.0-cp36-cp36m-win_amd64.whl
Installing collected packages: simplejson
Successfully installed simplejson-3.10.0

提示安装成功后,在\Python\Lib\site-packages目录下可以看到simplejson.

以上所述是小编给大家介绍的python 3.6 安装json 模块(simplejson)详解整合,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Python 相关文章推荐
Python 迭代器工具包【推荐】
May 06 Python
CentOS 6.5中安装Python 3.6.2的方法步骤
Dec 03 Python
使用python进行拆分大文件的方法
Dec 10 Python
python实现全盘扫描搜索功能的方法
Feb 14 Python
Python批量修改图片分辨率的实例代码
Jul 04 Python
解决python中导入win32com.client出错的问题
Jul 26 Python
Pandas聚合运算和分组运算的实现示例
Oct 17 Python
TFRecord格式存储数据与队列读取实例
Jan 21 Python
python随机生成大小写字母数字混合密码(仅20行代码)
Feb 01 Python
python 利用Pyinstaller打包Web项目
Oct 23 Python
python 实现图片批量压缩的示例
Dec 18 Python
基于PyQT5制作一个桌面摸鱼工具
Feb 15 Python
Pyinstaller打包.py生成.exe的方法和报错总结
Apr 02 #Python
Python3字符串encode与decode的讲解
Apr 02 #Python
深入了解和应用Python 装饰器 @decorator
Apr 02 #Python
python使用Plotly绘图工具绘制散点图、线形图
Apr 02 #Python
浅谈python的输入输出,注释,基本数据类型
Apr 02 #Python
windows下numpy下载与安装图文教程
Apr 02 #Python
python环境路径配置以及命令行运行脚本
Apr 02 #Python
You might like
ADODB类使用
2006/11/25 PHP
php 中英文语言转换类代码
2011/08/11 PHP
php安全开发 添加随机字符串验证,防止伪造跨站请求
2013/02/14 PHP
浅谈PHP定义命令空间的几个注意点(推荐)
2016/10/29 PHP
jquery实现固定顶部导航效果(仿蘑菇街)
2013/03/21 Javascript
深入理解javaScript中的事件驱动
2013/05/21 Javascript
用js实现in_array的方法
2013/11/05 Javascript
js 限制input只能输入数字、字母和汉字等等
2013/12/18 Javascript
jquery控制display属性为none或block
2014/03/31 Javascript
微信小程序  生命周期详解
2016/10/27 Javascript
浅谈javascript中的事件冒泡和事件捕获
2016/12/28 Javascript
微信小程序-获得用户输入内容
2017/02/13 Javascript
Bootstrap中data-target 到底是什么
2017/02/14 Javascript
NodeJs模拟登陆正方教务
2017/04/28 NodeJs
node中使用log4js4.x版本记录日志的方法
2019/08/20 Javascript
vue中使用v-model完成组件间的通信
2019/08/22 Javascript
Python中return语句用法实例分析
2015/08/04 Python
深入理解Python爬虫代理池服务
2018/02/28 Python
Python3 执行系统命令并获取实时回显功能
2019/07/09 Python
python 截取XML中bndbox的坐标中的图像,另存为jpg的实例
2020/03/10 Python
使用Keras 实现查看model weights .h5 文件的内容
2020/06/09 Python
Opencv+Python识别PCB板图片的步骤
2021/01/07 Python
全球最大的跑步用品商店:Road Runner Sports
2016/09/11 全球购物
Theo + George官方网站:都柏林时尚品牌
2019/04/08 全球购物
酒店销售经理岗位职责
2014/01/31 职场文书
投资协议书范本
2014/04/21 职场文书
个人主要事迹材料
2014/08/26 职场文书
报效祖国演讲稿
2014/09/15 职场文书
2014年党总支工作总结
2014/12/18 职场文书
餐厅收银员岗位职责
2015/04/07 职场文书
给女朋友的道歉短信
2015/05/12 职场文书
西安事变观后感
2015/06/12 职场文书
《曹冲称象》教学反思
2016/02/20 职场文书
2019年干货:自我鉴定
2019/03/25 职场文书
java executor包参数处理功能 
2022/02/15 Java/Android
css布局巧妙技巧之css三角示例的运用
2022/03/16 HTML / CSS