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求pi的方法
Oct 08 Python
采用Psyco实现python执行速度提高到与编译语言一样的水平
Oct 11 Python
Python实现SMTP发送邮件详细教程
Mar 02 Python
python实现人民币大写转换
Jun 20 Python
python版本单链表实现代码
Sep 28 Python
在python中实现对list求和及求积
Nov 14 Python
python给图像加上mask,并提取mask区域实例
Jan 19 Python
pycharm下pyqt4安装及环境配置的教程
Apr 24 Python
Python 解析库json及jsonpath pickle的实现
Aug 17 Python
python温度转换华氏温度实现代码
Dec 06 Python
将不规则的Python多维数组拉平到一维的方法实现
Jan 11 Python
Python采集股票数据并制作可视化柱状图
Apr 04 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中time()和mktime()方法的区别
2013/09/28 PHP
将PHP从5.3.28升级到5.3.29时Nginx出现502错误
2015/05/09 PHP
Symfony2实现在controller中获取url的方法
2016/03/18 PHP
PHP使用内置函数生成图片的方法详解
2016/05/09 PHP
PHP session会话操作技巧小结
2016/09/27 PHP
PHP简单数据库操作类实例【支持增删改查及链式操作】
2016/10/10 PHP
Yii2.0中使用js异步删除示例
2017/03/10 PHP
javascript父子页面通讯实例详解
2015/07/17 Javascript
JS实现仿Windows经典风格的选项卡Tab切换代码
2015/10/20 Javascript
深入浅析AngularJS中的module(模块)
2016/01/04 Javascript
如何使用AngularJs打造权限管理系统【简易型】
2016/05/09 Javascript
基于JavaScript实现添加到购物车效果附源码下载
2016/08/22 Javascript
yarn与npm的命令行小结
2016/10/20 Javascript
利用BootStrap的Carousel.js实现轮播图动画效果
2016/12/21 Javascript
Bootstrap模态框案例解析
2017/03/05 Javascript
NodeJS创建最简单的HTTP服务器
2017/05/15 NodeJs
JS计算两个时间相差分钟数的方法示例
2018/01/10 Javascript
微信小程序scroll-view组件实现滚动动画
2018/01/31 Javascript
浅谈webpack打包过程中因为图片的路径导致的问题
2018/02/21 Javascript
VeeValidate 的使用场景以及配置详解
2019/01/11 Javascript
elementUI Tree 树形控件的官方使用文档
2019/04/25 Javascript
构建Vue大型应用的10个最佳实践(小结)
2019/11/07 Javascript
详解小程序横屏方案对比
2020/06/28 Javascript
详解Python文本操作相关模块
2017/06/22 Python
python清理子进程机制剖析
2017/11/23 Python
python中(str,list,tuple)基础知识汇总
2018/02/20 Python
Python中psutil的介绍与用法
2019/05/02 Python
python内打印变量之%和f的实例
2020/02/19 Python
Python unittest工作原理和使用过程解析
2020/02/24 Python
HTML5中如何显示视频呢 HTML5视频播放demo
2013/06/08 HTML / CSS
HTML5实现预览本地图片
2016/02/17 HTML / CSS
固特异美国在线轮胎店:Goodyear Tire
2019/02/23 全球购物
专业见习报告范文
2014/11/03 职场文书
丽江古城导游词
2015/02/03 职场文书
公司2015年终工作总结
2015/05/26 职场文书
LeetCode189轮转数组python示例
2022/08/05 Python