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学习数据结构实例代码
May 11 Python
探究python中open函数的使用
Mar 01 Python
Python中表示字符串的三种方法
Sep 06 Python
Python浅复制中对象生存周期实例分析
Apr 02 Python
python实现在IDLE中输入多行的方法
Apr 19 Python
python3+PyQt5重新实现自定义数据拖放处理
Apr 19 Python
python 查找文件名包含指定字符串的方法
Jun 05 Python
python 实现线程之间的通信示例
Feb 14 Python
pandas数据拼接的实现示例
Apr 16 Python
python正则表达式 匹配反斜杠的操作方法
Aug 07 Python
python实现启动一个外部程序,并且不阻塞当前进程
Dec 05 Python
Python使用pandas导入csv文件内容的示例代码
Dec 24 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获取MySql新增记录ID值的3种方法
2014/06/24 PHP
PHP对象递归引用造成内存泄漏分析
2014/08/28 PHP
PHP+jquery实时显示网站在线人数的方法
2015/01/04 PHP
特殊字符、常规符号及其代码对照表
2006/06/26 Javascript
5个javascript的数字格式化函数分享
2011/12/07 Javascript
js或者jquery判断图片是否加载完成实现代码
2013/03/20 Javascript
Js日期选择自动填充到输入框(界面漂亮兼容火狐)
2013/08/02 Javascript
JavaScript获取table中某一列的值的方法
2014/05/06 Javascript
使用AOP改善javascript代码
2015/05/01 Javascript
JavaScript实现跨浏览器的添加及删除事件绑定函数实例
2015/08/04 Javascript
jQuery 判断图片是否加载完成方法汇总
2015/08/10 Javascript
Nodejs实战心得之eventproxy模块控制并发
2015/10/27 NodeJs
AngularJs Managing Service Dependencies详解
2016/09/02 Javascript
js仿小米官网图片轮播特效
2016/09/29 Javascript
BootStrap modal模态弹窗使用小结
2016/10/26 Javascript
基于jQuery实现火焰灯效果导航菜单
2017/01/04 Javascript
ES6中的Promise代码详解
2017/10/09 Javascript
Angular 组件之间的交互的示例代码
2018/03/24 Javascript
小程序实现悬浮搜索框
2019/07/12 Javascript
[15:07]lgd_OG_m2_BP
2019/09/10 DOTA
Python 性能优化技巧总结
2016/11/01 Python
Python基本socket通信控制操作示例
2019/01/30 Python
浅谈Python3 numpy.ptp()最大值与最小值的差
2019/08/24 Python
详解从Django Allauth中进行登录改造小结
2019/12/18 Python
Tensorflow: 从checkpoint文件中读取tensor方式
2020/02/10 Python
TensorFlow:将ckpt文件固化成pb文件教程
2020/02/11 Python
tensorflow将图片保存为tfrecord和tfrecord的读取方式
2020/02/17 Python
科颜氏香港官方网店:Kiehl’s香港
2021/03/07 全球购物
外企测试工程师面试题
2015/02/01 面试题
生物化学研究助理员求职信
2013/10/09 职场文书
外贸学院会计专业应届生求职信
2013/11/14 职场文书
学习新党章思想汇报
2014/01/09 职场文书
产品质量承诺书
2014/03/27 职场文书
2014保险公司个人工作总结
2014/12/09 职场文书
完美处理python与anaconda环境变量的冲突问题
2021/04/07 Python
微信小程序实现录音Record功能
2021/05/09 Javascript