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抓取最新博客内容并生成Rss
May 17 Python
win10环境下python3.5安装步骤图文教程
Feb 03 Python
Django添加sitemap的方法示例
Aug 06 Python
python3 拼接字符串的7种方法
Sep 12 Python
python简单贪吃蛇开发
Jan 28 Python
Python使用matplotlib 模块scatter方法画散点图示例
Sep 27 Python
python实现logistic分类算法代码
Feb 28 Python
Keras设置以及获取权重的实现
Jun 19 Python
Python3+selenium配置常见报错解决方案
Aug 28 Python
详解Python中openpyxl模块基本用法
Feb 23 Python
python 爬取哔哩哔哩up主信息和投稿视频
Jun 07 Python
python区块链持久化和命令行接口实现简版
May 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
高亮度显示php源代码
2006/10/09 PHP
php学习之数据类型之间的转换介绍
2011/06/09 PHP
PHP中去除换行解决办法小结(PHP_EOL)
2011/11/27 PHP
php中通过DirectoryIterator删除整个目录的方法
2015/03/13 PHP
laravel框架分组控制器和分组路由实现方法示例
2020/01/25 PHP
让div层随鼠标移动的实现代码 ie ff
2009/12/18 Javascript
JQuery 操作select标签实现代码
2010/05/14 Javascript
Js注册协议倒计时的小例子
2013/06/24 Javascript
jQuery中delegate和on的用法与区别详细解析
2014/01/26 Javascript
jQuery打印图片pdf、txt示例代码
2014/07/22 Javascript
javascript类型系统 Window对象学习笔记
2016/01/07 Javascript
BootstrapValidator实现注册校验和登录错误提示效果
2017/03/10 Javascript
Webpack打包字体font-awesome的方法示例
2018/04/26 Javascript
学习JS中的DOM节点以及操作
2018/04/30 Javascript
Vuejs2 + Webpack框架里,模拟下载的实例讲解
2018/09/05 Javascript
Vue scoped及deep使用方法解析
2020/08/01 Javascript
解决vue刷新页面以后丢失store的数据问题
2020/08/11 Javascript
python解析xml文件实例分享
2013/12/04 Python
Python设计模式之观察者模式简单示例
2018/01/10 Python
用python实现对比两张图片的不同
2018/02/05 Python
python数据结构之线性表的顺序存储结构
2018/09/28 Python
Python求离散序列导数的示例
2019/07/10 Python
Python Serial串口基本操作(收发数据)
2020/11/06 Python
python单例模式的应用场景实例讲解
2021/02/24 Python
canvas画图被放大且模糊的解决方法
2020/08/11 HTML / CSS
施华洛世奇日本官网:SWAROVSKI日本
2018/05/04 全球购物
德国高尔夫商店:Golfshop.de
2019/06/22 全球购物
英国泽西岛植物:Jersey Plants Direct
2019/08/07 全球购物
绝对经典成功的大学生推荐信
2013/11/08 职场文书
迟到检讨书大全
2014/01/25 职场文书
药学专业学生的自我评价分享
2014/02/06 职场文书
最美乡村医生事迹材料
2014/06/02 职场文书
陈安之励志演讲稿
2014/08/21 职场文书
2015年市场部工作总结
2015/04/30 职场文书
2015上半年个人工作总结
2015/07/27 职场文书
Nginx流量拷贝ngx_http_mirror_module模块使用方法详解
2022/04/07 Servers