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随手笔记之标准类型内建函数
Dec 02 Python
Python中list初始化方法示例
Sep 18 Python
Python实现在tkinter中使用matplotlib绘制图形的方法示例
Jan 18 Python
Sublime开发python程序的示例代码
Jan 24 Python
tensorflow中next_batch的具体使用
Feb 02 Python
利用python求积分的实例
Jul 03 Python
Django之提交表单与前后端交互的方法
Jul 19 Python
pandas 对日期类型数据的处理方法详解
Aug 08 Python
Python 批量读取文件中指定字符的实现
Mar 06 Python
利用Python实现Excel的文件间的数据匹配功能
Jun 16 Python
opencv 形态学变换(开运算,闭运算,梯度运算)
Jul 07 Python
使用Python解决图表与画布的间距问题
Apr 11 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
ThinkPHP跳转页success及error模板实例教程
2014/07/17 PHP
Yii2创建多界面主题(Theme)的方法
2016/10/08 PHP
php7安装mongoDB扩展的方法分析
2017/08/02 PHP
Thinkphp3.2简单解决多文件上传只上传一张的问题
2017/09/26 PHP
jquery 插件 人性化的消息显示
2008/01/21 Javascript
jQuery ui 1.7更新小结
2009/08/15 Javascript
JQuery的ready函数与JS的onload的区别详解
2013/11/21 Javascript
jQuery实现Div拖动+键盘控制综合效果的方法
2015/03/10 Javascript
js实现精美的银灰色竖排折叠菜单
2015/05/16 Javascript
JQuery+EasyUI轻松实现步骤条效果
2016/02/22 Javascript
详解nodejs 文本操作模块-fs模块(四)
2016/12/22 NodeJs
Bootstrap Table从零开始
2017/06/30 Javascript
bootstrap datepicker的基本使用教程
2019/07/09 Javascript
p5.js实现动态图形临摹
2019/10/23 Javascript
vue移动端弹起蒙层滑动禁止底部滑动操作
2020/07/22 Javascript
JavaScript的垃圾回收机制与内存管理
2020/08/06 Javascript
[01:34]2016国际邀请赛中国区预选赛IG战队教练采访
2016/06/27 DOTA
Python闭包实现计数器的方法
2015/05/05 Python
python写一个md5解密器示例
2018/02/23 Python
Python列表对象实现原理详解
2019/07/01 Python
python实现两个dict合并与计算操作示例
2019/07/01 Python
Pycharm自带Git实现版本管理的方法步骤
2020/09/18 Python
HTML5中视频音频的使用详解
2017/07/07 HTML / CSS
HTML5开发动态音频图的实现
2020/07/02 HTML / CSS
捷克移动配件网上商店:ProMobily.cz
2019/03/15 全球购物
波兰在线香水店:Perfumy.pl
2019/08/12 全球购物
Wiggle新西兰:自行车、跑步、游泳
2020/05/06 全球购物
工商治理实习生的自我评价
2014/01/15 职场文书
学生感冒英文请假条
2014/02/04 职场文书
保卫钓鱼岛口号
2014/06/20 职场文书
党员批评与自我批评(5篇)
2014/09/23 职场文书
幸福家庭事迹材料
2014/12/20 职场文书
平安家庭事迹材料
2014/12/20 职场文书
朋友聚会祝酒词
2015/08/10 职场文书
python3.7.2 tkinter entry框限定输入数字的操作
2021/05/22 Python
PostgreSQL自动更新时间戳实例代码
2021/11/27 PostgreSQL