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

作者:coder_Gray 时间:2023-11-29 21:42:41 

本文实例讲述了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文件中。

PS:这里再为大家推荐几款比较实用的json在线工具供大家参考使用:

在线JSON代码检验、检验、美化、格式化工具:
http://tools.jb51.net/code/json

JSON在线格式化工具:
http://tools.jb51.net/code/jsonformat

在线XML/JSON互相转换工具:
http://tools.jb51.net/code/xmljson

json代码在线格式化/美化/压缩/编辑/转换工具:
http://tools.jb51.net/code/jsoncodeformat

在线json压缩/转义工具:
http://tools.jb51.net/code/json_yasuo_trans

更多Python相关内容感兴趣的读者可查看本站专题:《Python操作json技巧总结》、《Python编码操作技巧总结》、《Python数据结构与算法教程》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》、《Python入门与进阶经典教程》及《Python文件与目录操作技巧汇总》

希望本文所述对大家Python程序设计有所帮助。

来源:https://blog.csdn.net/coder_Gray/article/details/78395066

标签:Python,json文件
0
投稿

猜你喜欢

  • Mysql存储过程中游标的用法实例

    2024-01-22 14:59:10
  • XPath详解,总结

    2009-04-17 14:09:00
  • 高性能PHP框架Symfony2经典入门教程

    2023-11-16 02:39:23
  • 关于Python Socket编程的要点详解

    2021-11-25 17:44:11
  • Python实现的读取电脑硬件信息功能示例

    2023-05-13 21:36:03
  • ACCESS入门教程:窗口和菜单的使用

    2008-01-03 20:15:00
  • python 如何在list中找Topk的数值和索引

    2022-01-20 10:28:27
  • 原生js实现移动小球(碰撞检测)

    2024-04-19 09:56:01
  • 如何利用Python获取鼠标的实时位置

    2022-08-11 07:00:33
  • Python下opencv使用hough变换检测直线与圆

    2021-04-20 20:15:53
  • 61条面向对象设计的经验原则

    2008-05-08 13:05:00
  • Python如何在windows环境安装pip及rarfile

    2021-01-12 18:00:21
  • 用python查找统一局域网下ip对应的mac地址

    2023-01-23 19:10:21
  • MySQL5创建存储过程实例

    2010-06-13 12:49:00
  • vue中el-table合并列的具体实现

    2024-05-02 16:35:03
  • 框架和框架之间的关系

    2008-01-17 18:54:00
  • Python循环结构详解

    2023-09-03 13:34:09
  • Python环境下搭建属于自己的pip源的教程

    2021-12-19 05:57:54
  • python实现查询IP地址所在地

    2021-09-08 17:18:43
  • MySql使用mysqldump 导入与导出方法总结

    2024-01-23 13:26:32
  • asp之家 网络编程 m.aspxhome.com