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中列表、字典、元组、集合数据结构整理
Nov 20 Python
python遍历类中所有成员的方法
Mar 18 Python
python实现二维码扫码自动登录淘宝
Dec 27 Python
Python实现PS滤镜碎片特效功能示例
Jan 24 Python
Python使用combinations实现排列组合的方法
Nov 13 Python
Django实现网页分页功能
Oct 31 Python
Python pip install如何修改默认下载路径
Apr 29 Python
python使用列表的最佳方案
Aug 12 Python
手把手教你从PyCharm安装到激活(最新激活码),亲测有效可激活至2089年
Nov 25 Python
为2021年的第一场雪锦上添花:用matplotlib绘制雪花和雪景
Jan 05 Python
python 中的jieba分词库
Nov 23 Python
利用Python多线程实现图片下载器
Mar 25 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
linux下为php添加curl扩展的方法
2011/07/29 PHP
简单的php中文转拼音的实现代码
2014/02/11 PHP
PHP is_subclass_of函数的一个BUG和解决方法
2014/06/01 PHP
codeigniter上传图片不能正确识别图片类型问题解决方法
2014/07/25 PHP
php采集内容中带有图片地址的远程图片并保存的方法
2015/01/03 PHP
smarty模板引擎之分配数据类型
2015/03/30 PHP
浅谈本地WAMP环境的搭建
2015/05/13 PHP
PHP环境搭建(php+Apache+mysql)
2016/11/14 PHP
一个js写的日历(代码部分网摘)
2009/09/20 Javascript
jQuery中html()方法用法实例
2014/12/25 Javascript
PHP+MySQL+jQuery随意拖动层并即时保存拖动位置实例讲解
2015/10/09 Javascript
jQuery Easyui Tabs扩展根据自定义属性打开页签
2016/08/15 Javascript
从零开始学习Node.js系列教程五:服务器监听方法示例
2017/04/13 Javascript
js实现从左向右滑动式轮播图效果
2017/07/07 Javascript
浅谈Vuejs中nextTick()异步更新队列源码解析
2017/12/31 Javascript
浅谈微信小程序之官方UI框架we-ui使用教程
2018/08/20 Javascript
JS常见构造模式实例对比分析
2018/08/27 Javascript
解决layui数据表格table的横向滚动条显示问题
2019/09/04 Javascript
IDEA安装vue插件图文详解
2019/09/26 Javascript
Vue项目打包部署到iis服务器的配置方法
2019/10/14 Javascript
python requests 测试代理ip是否生效
2018/07/25 Python
django框架forms组件用法实例详解
2019/12/10 Python
推荐8款常用的Python GUI图形界面开发框架
2020/02/23 Python
python装饰器三种装饰模式的简单分析
2020/09/04 Python
python各种excel写入方式的速度对比
2020/11/10 Python
JBL美国官方商店:扬声器、耳机等
2019/12/01 全球购物
Nobody Denim官网:购买高级女士牛仔裤
2021/03/15 全球购物
财务经理岗位职责
2013/11/09 职场文书
写给女朋友的检讨书
2014/01/28 职场文书
趣味游戏活动方案
2014/02/07 职场文书
会计系毕业生求职信
2014/05/28 职场文书
创优争先心得体会
2014/09/11 职场文书
2014年科室工作总结
2014/11/20 职场文书
寒暑假实习证明书模板
2014/11/29 职场文书
硕士论文致谢范文
2015/05/14 职场文书
Django一小时写出账号密码管理系统
2021/04/29 Python