json是什么_如何利用Python处理JSON格式的数据,建议收藏!!!
JSON数据格式在我们的日常工作中经常会接触到,无论是做爬虫开发还是一般的数据分析处理,今天,小编就来分享一下当数据接口是JSON格式时,如何进行数据处理进行详细的介绍,内容分布如下
- 什么是JSON
- JSON模块的使用方法
什么是JSON
![](http://img-03.proxy.5ce.com/view/image?&type=2&guid=e90ead01-0f30-eb11-8da9-e4434bdf6706&url=https://pic3.zhimg.com/v2-f1ff722273b0c2e4aff1ff94af4d171e_b.gif)
JSON(JavaScript Object Notation, JS对象简谱)是一种轻量级的数据交换格式,通常是以键值对的方式呈现,其简洁和清晰的层次结构使得JSON成为理想的数据交换语言,而在Python中处理JSON格式的模块有json和pickle两个
- json模块和pickle都提供了四个方法:dumps, dump, loads, load
- 序列化:将python的数据转换为json格式的字符串
- 反序列化:将json格式的字符串转换成python的数据类型
序列化
![](http://img-03.proxy.5ce.com/view/image?&type=2&guid=e90ead01-0f30-eb11-8da9-e4434bdf6706&url=https://pic3.zhimg.com/v2-f1ff722273b0c2e4aff1ff94af4d171e_b.gif)
首先我们来看一下序列化是如何操作的,我们首先用json.dump()将字典写入json格式的文件中
![](http://img-03.proxy.5ce.com/view/image?&type=2&guid=e90ead01-0f30-eb11-8da9-e4434bdf6706&url=https://pic3.zhimg.com/v2-6852ac8db50fc52a0c4a7f3f4b98fa0e_b.jpg)
能够进行类似操作的则是dataframe当中的to_json()方法,比方说
![](http://img-01.proxy.5ce.com/view/image?&type=2&guid=e90ead01-0f30-eb11-8da9-e4434bdf6706&url=https://pic4.zhimg.com/v2-eb68daceb9396009cf846ae990e022d3_b.jpg)
而当你分别打开这两个文件时,里面的内容分别是以键值对呈现的json数据。另外,我们看到有json.dumps()和json.dump(), 两者看着十分的相似,但是在功能上可是大相径庭,json.dump()进行的是对json文件的读写操作,就比如上述的例子中,我们将字典数据写入json的文件中用的就是json.dump,而json.dumps()则是聚焦于数据本身类型的转换,对数据的操作,比如
![](http://img-03.proxy.5ce.com/view/image?&type=2&guid=e90ead01-0f30-eb11-8da9-e4434bdf6706&url=https://pic3.zhimg.com/v2-c0b8d9a86104c5e522e385059169af6e_b.jpg)
反序列化
![](http://img-03.proxy.5ce.com/view/image?&type=2&guid=e90ead01-0f30-eb11-8da9-e4434bdf6706&url=https://pic3.zhimg.com/v2-f1ff722273b0c2e4aff1ff94af4d171e_b.gif)
在反序列化的过程中,我们需要用到的则是json.load()和json.loads()方法,比如说
![](http://img-03.proxy.5ce.com/view/image?&type=2&guid=e90ead01-0f30-eb11-8da9-e4434bdf6706&url=https://pic1.zhimg.com/v2-2772083bdc9fc986c0147086697e5e10_b.jpg)
可以看到的是变量teachers的类型是字典类型,所以可以通过相应的方式来获取以及改变其中的数值以及格式,另外一种方法则是通过pandas模块中的read_json()方法,例如
![](http://img-02.proxy.5ce.com/view/image?&type=2&guid=e90ead01-0f30-eb11-8da9-e4434bdf6706&url=https://pic3.zhimg.com/v2-28f23cfbf4e4a1a9c164274b44342402_b.jpg)
从上述的例子中可以看出,json.load()主要处理的是json格式的文件,而json.loads()主要是对JSON编码的字符串进行数据类型的转换,
![](http://img-03.proxy.5ce.com/view/image?&type=2&guid=e90ead01-0f30-eb11-8da9-e4434bdf6706&url=https://pic3.zhimg.com/v2-293248fd766438befaa556b7d0d70dfa_b.jpg)
总结
本文主要是讲了序列化与反序列化的相关操作步骤,读者需要在其中留心的则是json.loads()与json.load(),以及json.dumps()和json.dump()之间的区别和使用场景,总的来说
- json.loads():是将json格式的字符串(str)转换为字典类型(dict)的数据
- json.dumps():返回来,是将字典类型(dict)的数据转换成json格式的字符串
- json.load():用于读取json格式的文件,将文件中的数据转换为字典类型(dict)
- json.dump():主要用于存入json格式的文件,将字典类型转换为json形式的字符串
json是什么_如何利用Python处理JSON格式的数据,建议收藏!!!相关推荐
- python json删除字段_如何使用python删除json对象?
我正在使用python删除和更新一个由用户提供的数据生成的JSON文件,这样数据库中只存储很少的项目.我想从JSON文件中删除一个特定的对象. 我的JSON文件是: [ { "ename&q ...
- python 修改json文件的value值,利用python修改json文件的val
做工程时遇到需要监听json文件,根据json文件中的key-value值作出相应处理的情形.为此写了修改json文件的python脚本供工程后续调用. 代码如下:# coding=utf-8 //设 ...
- python json解析列表显示_求教一下 python 读取 json 以后,输出的问题(unicode 和中文显示)...
但是,中文的显示还是不行,输出见下 def byteify(input): if isinstance(input, dict): return {byteify(key):byteify(value ...
- python 抓取微博评论破亿_如果利用Python分析14亿条数据!资深程序员手把手教你!过亿级!...
挑战 1-gram 的数据集在硬盘上可以展开成为 27 Gb 的数据,这在读入 python 时是一个很大的数据量级.Python可以轻易地一次性地处理千兆的数据,但是当数据是损坏的和已加工的,速度就 ...
- 利用python查询电脑配置_干货|利用Python将地址转换为经纬度坐标
本文主要讲述利用Python将文本格式的地址转换为数字格式的经纬度坐标数据,主要步骤有: 注册高德地图API账号,申请Web服务的Key 了解并测试地理编码API服务 利用Python实现地址转坐标 ...
- python json 转csv_利用python将json数据转换为csv格式的方法
假设.json文件中存储的数据为: {"type": "Point", "link": "http://www.dianping. ...
- python爬去百度文库_利用Python语言轻松爬取数据[精品文档]
利用 Python 语言轻松爬取数据 对于小白来说,爬虫可能是一件非常复杂. 技术门槛很高的事情. 比如有人认为学爬虫必须精通 Python ,然后哼哧哼哧系统学习 Python 的每个知识点,很久之 ...
- python爬取百度文库_利用Python语言轻松爬取数据
利用 Python 语言轻松爬取数据 对于小白来说,爬虫可能是一件非常复杂. 技术门槛很高的事情. 比如有人认为学爬虫必须精通 Python ,然后哼哧哼哧系统学习 Python 的每个知识点,很久之 ...
- python在json文件中查找指定数据_Python中json的取值 如何使用python提取json中指定字段的数据...
python中为什么用json有什么作用 如何用python读取json里面的值啊我爱你,所以我给了你伤害我的权力,只要我能忍受,我会一直陪伴着你,但你不能伤害我太多. 数据如下,我想要读取name. ...
最新文章
- FindAllAnagramsinaString
- 1.QT刷新ROS地图画面时,地图画面时不时卡住,甚至整个界面挂掉退出
- ASP.NET通过ajax调用后台方法
- 欧拉回路 欧拉路径
- java开心消消乐代码_Vue实现开心消消乐游戏算法
- 一个简单的录音软件程序代码【C++】
- LNMP架构介绍与搭建
- 操作数据库pymysql
- 闭合导线计算软件excel_测量坐标计算程序 V6
- web前端开发技术实验与实践(第三版)储久良编著 项目14 设计中国教育网络杂志简介
- 校园一卡通管理信息系统的设计与实现(asp.net)
- 【教程】手把手教你做外卖红包推广返利公众号搭建
- 常见职位角色及其英文缩写
- Tomcat崩溃排查
- Android TV 认证简介
- c语言入门自学mobi,算法精解:C语言描述[AZW3][EPUB][MOBI][23.00MB]
- 配置 Tapestry
- RDD转换为DataFrame的两种方式详解
- hids Elastic Security 系列1-Elastic Security介绍
- 《软件项目管理》复习知识点
热门文章
- 超前促销创意PSD分层电商海报,紧抓住消费冲突视觉力!
- 手机应用UI设计示例+模板|为了在下一个应用程序设计项目找到灵感
- android ascii 比较大小写,为什么可以通过ASCII中的字母排序规则来进行字母的大小写转换?...
- 如何在手机上打开xmind文件_xmind在手机上怎么操作
- pythontime库简单使用_Python time库基本使用方法分析
- SizeOf相关代码
- 安装Qemu-6.1.0
- Linux启动管理:主引导目录(MBR)结构及作用详解
- 什么是Intel LBR(上次分支记录),BTS(分支跟踪存储)和AET(体系结构事件跟踪)?
- LLVM 核心类简明示例