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脚本实现分析dns日志并对受访域名排行
Sep 18 Python
python实现xlsx文件分析详解
Jan 02 Python
一文带你了解Python中的字符串是什么
Nov 20 Python
Python3环境安装Scrapy爬虫框架过程及常见错误
Jul 12 Python
python实现的登录与提交表单数据功能示例
Sep 25 Python
TensorFlow2.0:张量的合并与分割实例
Jan 19 Python
Python计算公交发车时间的完整代码
Feb 12 Python
Python configparser模块应用过程解析
Aug 14 Python
PIP和conda 更换国内安装源的方法步骤
Sep 21 Python
python爬虫爬取图片的简单代码
Jan 18 Python
Django集成富文本编辑器summernote的实现步骤
May 31 Python
OpenCV图像变换之傅里叶变换的一些应用
Jul 26 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
mysql5的sql文件导入到mysql4的方法
2008/10/19 PHP
php使用正则表达式获取图片url的方法
2015/01/16 PHP
yii gridview实现时间段筛选功能
2017/08/15 PHP
PHP+百度AI OCR文字识别实现了图片的文字识别功能
2019/05/08 PHP
javascript SocialHistory 检查访问者是否访问过某站点
2008/08/02 Javascript
JS实现局部选择打印和局部不选择打印
2014/04/03 Javascript
JavaScript实现简单的二级导航菜单实例
2015/04/15 Javascript
巧用canvas
2017/01/21 Javascript
Vue + Webpack + Vue-loader学习教程之功能介绍篇
2017/03/14 Javascript
react-router4 配合webpack require.ensure 实现异步加载的示例
2018/01/18 Javascript
浅析vue深复制
2018/01/29 Javascript
基于Vue实现图片在指定区域内移动的思路详解
2018/11/11 Javascript
Vue 组件参数校验与非props特性的方法
2019/02/12 Javascript
Vue.js中的extend绑定节点并显示的方法
2019/06/20 Javascript
js实现滑动进度条效果
2020/08/21 Javascript
js+h5 canvas实现图片验证码
2020/10/11 Javascript
[01:37]DOTA2超级联赛专访ChuaN 传奇般的电竞之路
2013/06/19 DOTA
python生成指定尺寸缩略图的示例
2014/05/07 Python
python中使用enumerate函数遍历元素实例
2014/06/16 Python
解读Python中degrees()方法的使用
2015/05/18 Python
使用Python3编写抓取网页和只抓网页图片的脚本
2015/08/20 Python
Python Sqlite3以字典形式返回查询结果的实现方法
2016/10/03 Python
pandas数据筛选和csv操作的实现方法
2019/07/02 Python
Python图像处理PIL各模块详细介绍(推荐)
2019/07/17 Python
详解从Django Allauth中进行登录改造小结
2019/12/18 Python
解析python 中/ 和 % 和 //(地板除)
2020/06/28 Python
TripAdvisor西班牙官方网站:全球领先的旅游网站
2018/01/10 全球购物
个人实用简单的自我评价
2013/10/19 职场文书
学习委员自我鉴定
2014/01/13 职场文书
个人贷款承诺书
2014/03/28 职场文书
计算机系统管理员求职信
2014/06/20 职场文书
2014大学生职业生涯规划书最新范文
2014/09/13 职场文书
高中生毕业评语
2014/12/30 职场文书
运动员加油词
2015/07/18 职场文书
《中彩那天》教学反思
2016/02/24 职场文书
Python爬取奶茶店数据分析哪家最好喝以及性价比
2022/09/23 Python