Python实现的读写json文件功能示例


Posted in Python onJune 05, 2018

本文实例讲述了Python实现的读写json文件功能。分享给大家供大家参考,具体如下:

相比java,python对json文件的处理就简单很多。java操作json文件的话需要引用jar包及相关依赖包,想用java操作json的同学可以去百度,这里就不赘述了。

首先说读json文件

在进行json操作之前,首先要了解json的格式,分辨json文件。

json文件格式一般有两种:

第一种:每行一个json类似于以下这种形式:

["name":"Tony","age":"21","hobbies" : ["basketball","tennis"]]
["name":"Lisa","age":"20","hobbies" : ["sing","dance"]]

这种json格式是每一行是一个json,行与行之间没有关联。

第二种:一个文件写成一个大的json

[
{"name":"Tony","age":"21","hobbies" : ["basketball","tennis"]},
{"name":"Lisa","age":"20","hobbies" : ["sing","dance"]}
]

这种格式每条记录之间用,连接。

下面读取json文件,利用json.load函数

f = open('/home/codergray/company/test_2.json')
#将json格式的数据映射成list的形式
t = json.load(f)

所以t是一个list,按照正常访问list的方法访问就可以。

str = t[0]['name']
print str

输出:

Tony

以上面的例子为例,访问t[0]也就是第一条json记录[‘name']代表name字段,因而就读出了值“Tony”

写json文件

写json一般是上文提到的json格式的第二种格式,也就是整体是一个大的json。

举个例子:

f = open('result.json','w')
result = []
temp = {}
temp['name'] = 'Tony'
temp['age'] = '21'
tamp['hobbies'] = ['basketball','tennis']
result.append(temp)
f.write(json.dumps(result,ensure_ascii=False))

通过以上代码就将一个json写进了result.json文件,当然这个大json里面只有一条记录,如果想插入多条记录可以利用循环。json.dumps方法可以看作是json.load的逆过程,将list的数据格式转化为json存在json文件中。

Python 相关文章推荐
用Python的pandas框架操作Excel文件中的数据教程
Mar 31 Python
python实现随机森林random forest的原理及方法
Dec 21 Python
python web自制框架之接受url传递过来的参数实例
Dec 17 Python
Python实现蒙特卡洛算法小实验过程详解
Jul 12 Python
Python3将数据保存为txt文件的方法
Sep 12 Python
Python实现字符串中某个字母的替代功能
Oct 21 Python
Django xadmin开启搜索功能的实现
Nov 15 Python
python实现mean-shift聚类算法
Jun 10 Python
基于nexus3配置Python仓库过程详解
Jun 15 Python
Python迭代器协议及for循环工作机制详解
Jul 14 Python
matplotlib实现数据实时刷新的示例代码
Jan 05 Python
python中pd.cut()与pd.qcut()的对比及示例
Jun 16 Python
python计算日期之间的放假日期
Jun 05 #Python
python检索特定内容的文本文件实例
Jun 05 #Python
python中利用h5py模块读取h5文件中的主键方法
Jun 05 #Python
python 读取txt,json和hdf5文件的实例
Jun 05 #Python
利用Python如何将数据写到CSV文件中
Jun 05 #Python
Python之dict(或对象)与json之间的互相转化实例
Jun 05 #Python
对pandas中to_dict的用法详解
Jun 05 #Python
You might like
浅析php插件 Simple HTML DOM 用DOM方式处理HTML
2013/07/01 PHP
PHP反射类ReflectionClass和ReflectionObject的使用方法
2013/11/13 PHP
PH P5.2至5.5、5.6的新增功能详解
2014/07/14 PHP
php curl常用的5个经典例子
2017/01/20 PHP
使用PHPExcel导出Excel表
2018/09/08 PHP
微信公众号实现扫码获取微信用户信息(网页授权)
2019/04/09 PHP
浅谈javascript中的作用域
2012/04/07 Javascript
终于解决了IE8不支持数组的indexOf方法
2013/04/03 Javascript
Extjs优化(二)Form表单提交通用实现
2013/04/15 Javascript
Javascript 多浏览器兼容总结(实战经验)
2013/10/30 Javascript
深入剖析JavaScript:Object类型
2016/05/10 Javascript
AngularJS过滤器详解及示例代码
2016/08/16 Javascript
HTML5+jQuery实现搜索智能匹配功能
2017/03/24 jQuery
详解Js中的模块化是如何实现的
2017/10/18 Javascript
Vue组件通信的四种方式汇总
2018/02/08 Javascript
vue实现公共方法抽离
2020/07/31 Javascript
jquery实现图片放大镜效果
2020/12/23 jQuery
[52:27]2018DOTA2亚洲邀请赛 3.31 小组赛B组 paiN vs Secret
2018/04/01 DOTA
[13:25]VP vs VICI (BO3)
2018/06/07 DOTA
[01:02:09]Liquid vs TNC 2019国际邀请赛淘汰赛 胜者组 BO3 第二场 8.21
2020/07/19 DOTA
Python的加密模块md5、sha、crypt使用实例
2014/09/28 Python
Python MySQL数据库连接池组件pymysqlpool详解
2017/07/07 Python
基于数据归一化以及Python实现方式
2018/07/11 Python
Python实现提取XML内容并保存到Excel中的方法
2018/09/01 Python
Django 模型类(models.py)的定义详解
2019/07/19 Python
django数据库自动重连的方法实例
2019/07/21 Python
社团2014年植树节活动总结
2014/03/11 职场文书
酒店管理求职信
2014/06/09 职场文书
毕业实习感受与体会
2015/05/26 职场文书
团拜会主持词
2015/07/04 职场文书
办公室日常管理制度
2015/08/04 职场文书
“学党章、守党纪、讲党规”学习心得体会
2016/01/14 职场文书
干部作风纪律整顿心得体会
2016/01/23 职场文书
SQL实现LeetCode(177.第N高薪水)
2021/08/04 MySQL
教你一步步实现一个简易promise
2021/11/02 Javascript
MySQL数据库配置信息查看与修改方法详解
2022/06/25 MySQL