python的json包位置及用法总结


Posted in Python onJune 21, 2020

JSON是一种独立于语言的文本格式,用于数据交换,可以在不同语言间交换数据。

在高级版本的Python里自带json模块包,使用import json直接导入模块。

JSON文本以“键/值”对形式定义,Python里的json模块主要用于“Python数据与JSON格式的数据间相互转换”。

JSON的数据类型:

数字(整数或浮点数),字符串(“ ”),逻辑值(True/False),数组([ ]),对象({ }),null。

json模块里常用的四个方法是dump,dumps,load,loads。详细的方法使用细节参考Python自带帮助文件help(json.dump)。

Encode编码为json对象:

json.dumps

Pyhton的Json模块提供了把内存中的对象序列化的方法。

dump的功能就是把Python对象encode为json对象,一个编码过程。 注意json模块提供了json.dumps和json.dump方法,区别是dump直接到文件,而dumps到一个字符串,这里的s可以理解为string。

#dumps方法
import json
data = [{ 'a':'A', 'b':(2, 4), 'c':3.0 }]
print('DATA:', repr(data), type(data)) 
data_string = json.dumps(data)
print('JSON:', data_string, type(data_string))

json.dump

不仅可以把Python对象编码为string,还可以写入文件。

但是不能把Python对象直接写入文件,这样会报错TypeError: expected a string or other character buffer object,需要将其序列化之后才可以写入文件。

#dump方法
import json
data = [ { 'a':'A', 'b':(2, 4), 'c':3.0 } ]
with open('output.json','w') as fp:
 json.dump(data,fp)

Decode解码为Python对象:

json.loads

以上给出了Python内置对象dump为json对象的操作,反过来,那如何从json对象decode解码为Python可以识别的对象呢?

用loads方法,当然这个是基于string的;如果是文件,可以用json.load方法。

#loads方法
decoded_json = json.loads(data_string)
print(type(decoded_json),decoded_json)

json.load

#load方法
with open('output.json') as fp:
 print(type(fp))
  
 loaded_json = json.load(fp)
 print(type(loaded_json),loaded_json)

Python里open(‘文件路径',‘读写模式')内建函数,作用是打开文件。

利用with代码块操作,便于管理上下文,当with代码块执行完时,内容会自动关闭并释放文件资源。

知识点补充:

数据类型对照表

python数据 json数据
dict object
list, tuple array
str, unicode string
int, long, float number
True true
False false
None null
单引号(') 双引号(")

到此这篇关于python的json包位置及用法总结的文章就介绍到这了,更多相关python的json包用法详解内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
跟老齐学Python之编写类之一创建实例
Oct 11 Python
分析在Python中何种情况下需要使用断言
Apr 01 Python
python计算auc指标实例
Jul 13 Python
利用Python如何生成hash值示例详解
Dec 20 Python
解决python3中解压zip文件是文件名乱码的问题
Mar 22 Python
python 获取文件下所有文件或目录os.walk()的实例
Apr 23 Python
Python嵌套列表转一维的方法(压平嵌套列表)
Jul 03 Python
利用python和百度地图API实现数据地图标注的方法
May 13 Python
Django rest framework jwt的使用方法详解
Aug 08 Python
python matplotlib库绘制条形图练习题
Aug 10 Python
Python虚拟环境venv用法详解
May 25 Python
Python爬虫抓取指定网页图片代码实例
Jul 24 Python
为什么相对PHP黑python的更少
Jun 21 #Python
通过自学python能找到工作吗
Jun 21 #Python
python中常见错误及解决方法
Jun 21 #Python
python安装后的目录在哪里
Jun 21 #Python
浅谈Python 函数式编程
Jun 20 #Python
音频处理 windows10下python三方库librosa安装教程
Jun 20 #Python
深入浅析python 中的self和cls的区别
Jun 20 #Python
You might like
Amazon Prime Video平台《无限住人 -IMMORTAL-》2020年开始TV放送!
2020/03/06 日漫
php图片的裁剪与缩放生成符合需求的缩略图
2013/01/11 PHP
php获取linux命令结果的实例
2017/03/13 PHP
php + nginx项目中的权限详解
2017/05/23 PHP
地震发生中逃生十大法则
2008/05/12 Javascript
javascript笔试题目附答案@20081025_jb51.net
2008/10/26 Javascript
Extjs中ComboBoxTree实现的下拉框树效果(自写)
2013/05/28 Javascript
基于jquery实现的图片在各种分辨率下未知的容器内上下左右居中
2014/05/11 Javascript
推荐25个超炫的jQuery网格插件
2014/11/28 Javascript
javascript连续赋值问题
2015/07/08 Javascript
jquery树形菜单效果的简单实例
2016/06/06 Javascript
javascript设计模式之module(模块)模式
2016/08/19 Javascript
原生JS实现首页进度加载动画
2016/09/14 Javascript
nodejs前端自动化构建环境的搭建
2017/07/26 NodeJs
jQuery plugin animsition使用小结
2017/09/14 jQuery
vue获取DOM元素并设置属性的两种实现方法
2017/09/30 Javascript
用Vue.js方法创建模板并使用多个模板合成
2019/06/28 Javascript
JavaScript对象属性操作实例解析
2020/02/04 Javascript
详解小程序横屏方案对比
2020/06/28 Javascript
js实现飞机大战游戏
2020/08/26 Javascript
python中dir函数用法分析
2015/04/17 Python
剖析Python的Twisted框架的核心特性
2016/05/25 Python
python3.x上post发送json数据
2018/03/04 Python
使用python生成目录树
2018/03/29 Python
用python实现k近邻算法的示例代码
2018/09/06 Python
三步实现Django Paginator分页的方法
2019/06/11 Python
美国在线家装零售商:Build.com
2016/09/02 全球购物
美国体育用品在线:Modell’s Sporting Goods
2018/06/07 全球购物
学前教育学生自荐信范文
2013/12/31 职场文书
冰淇淋开店创业计划书
2014/02/01 职场文书
太太口服液广告词
2014/03/20 职场文书
学习优秀党员杨宗兴先进事迹材料思想汇报
2014/09/14 职场文书
学生检讨书
2015/01/27 职场文书
酒店财务经理岗位职责
2015/04/08 职场文书
刑事附带民事诉讼答辩状
2015/05/22 职场文书
Django使用channels + websocket打造在线聊天室
2021/05/20 Python