详解python 3.6 安装json 模块(simplejson)
JSON相关概念:
序列化(Serialization):将对象的状态信息转换为可以存储或可以通过网络传输的过程,传输的格式可以是JSON,XML等。反序列化就是从存储区域(JSON,XML)读取反序列化对象的状态,重新创建该对象。
JSON(JavaScriptObjectNotation):一种轻量级数据交互格式,相对于XML而言更简单,也易于阅读和编写,机器也方便解析和生成,Json是JavaScript中的一个子集。
python2.6版本开始加入了JSON模块,python的json模块序列化与反序列化的过程分别是encoding和decoding。
- encoding:把一个python对象编码转换成Json字符串。
- decoding:把json格式字符串编码转换成python对象。
具体应用:
json提供四个功能:dumps,dump,loads,load
dumps功能:将数据通过特殊的形式转换为所有程序语言都认识的字符串
>>>importsimplejson >>>data=['aa','bb','cc'] >>>j_str=simplejsondumps(data) Traceback(mostrecentcalllast): File"",line1,in NameError:name'simplejsondumps'isnotdefined >>>j_str=simplejson.dumps(data) >>>j_str '["aa","bb","cc"]'
loads功能:将json编码的字符串再转换为python的数据结构
>>>mes=simplejson.load(j_str) Traceback(mostrecentcalllast): File"",line1,in File"D:\ProgramFiles\python\lib\site-packages\simplejson\__init__.py",line455,inload returnloads(fp.read(), AttributeError:'str'objecthasnoattribute'read' >>>mes=simplejson.loads(j_str) >>>mes ['aa','bb','cc']
#dump功能 #将数据通过特殊的形式转换为所有程序语言都认识的字符串,并写入文件 withopen('D:/tmp.json','w')asf: simplejson.dump(data,f)
#load功能 #从数据文件中读取数据,并将json编码的字符串转换为python的数据结构 withopen('D:/tmp.json','r')asf: 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,元组()会被映射为列表[],因为其他语言没有元组的概念,只有数组,也就是列表。
>>>importsimplejson >>>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:\ProgramFiles\Python\Scripts。使用pip安装刚刚下载好的whl文件,pip.exeinstall*.whl,例如:
D:\ProgramFiles\python\Scripts>pip.exeinstallD:\python\simplejson-3.10.0-cp36-cp36m-win_amd64.whl
Processingd:\python\simplejson-3.10.0-cp36-cp36m-win_amd64.whl
Installingcollectedpackages:simplejson
Successfullyinstalledsimplejson-3.10.0
提示安装成功后,在\Python\Lib\site-packages目录下可以看到simplejson.
以上所述是小编给大家介绍的python3.6安装json模块(simplejson)详解整合,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对毛票票网站的支持!