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

作者:在奋斗的大道 时间:2023-08-04 10:55:03 

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)详解整合网站的支持!

来源:https://blog.csdn.net/zhouzhiwengang/article/details/72357608

标签:python,json,simplejson
0
投稿

猜你喜欢

  • RS.GETROWS使用详解

    2008-01-16 13:21:00
  • MySQL高级操作指令汇总

    2024-01-21 04:42:01
  • adonet基础示例分享(adonet连接数据库)

    2024-01-15 23:15:44
  • Python中的map()函数和reduce()函数的用法

    2021-10-19 01:04:34
  • mysql和oracle默认排序的方法 - 不指定order by

    2024-01-27 17:44:28
  • Python之Pygame的Event事件模块

    2021-07-17 06:18:40
  • SQL Server 2000安装图解教程

    2009-09-09 19:59:00
  • Python如何使用pymongo连接MongoDB数据库并进行相关操作

    2023-05-12 01:21:49
  • C#中的委托和事件

    2007-09-26 20:50:00
  • sql格式化工具集合

    2024-01-14 02:15:14
  • Django 报错:Broken pipe from ('127.0.0.1', 58924)的解决

    2021-03-27 21:12:09
  • asp从Excel中筛选符合条件的记录保存至新的Excel中

    2007-09-06 19:20:00
  • python+OpenCV实现图像拼接

    2023-01-28 08:09:26
  • Pycharm以root权限运行脚本的方法

    2022-03-16 12:23:51
  • python验证码识别的示例代码

    2023-08-04 03:20:24
  • MySQL数据库查询进阶之多表查询详解

    2024-01-27 07:14:51
  • opencv实现回形遍历像素算法

    2021-12-26 01:49:30
  • 简单谈谈Python中的闭包

    2021-10-20 12:50:46
  • python使用cPickle模块序列化实例

    2022-06-26 22:35:09
  • asp.net连接查询SQL数据库并把结果显示在网页上(2种方法)

    2024-01-12 13:28:10
  • asp之家 网络编程 m.aspxhome.com