JSON文件及Python对JSON文件的读写操作


Posted in Python onOctober 07, 2018

一,什么是JSON文件

JSON和XML都是互联网上数据交换的主要载体。

在JSON出现之前,大家一直用XML来传递数据。因为XML是一种纯文本格式,所以它适合在网络上交换数据。XML本身不算复杂,但是,加上DTD、XSD、XPath、XSLT等一大堆复杂的规范以后,任何正常的软件开发人员碰到XML都会感觉头大了,最后大家发现,即使你努力钻研几个月,也未必搞得清楚XML的规范。于是,道格拉斯·克罗克福特(Douglas Crockford)发明了JSON这种超轻量级的数据交换语言,由于JSON非常简单,它很快就风靡Web世界,并且成为ECMA标准,几乎所有编程语言都有解析JSON的库。

JSON(JavaScript Object Notation)是基于ECMAScript(欧洲计算机协会制定的js规范)的一个子集,采用独立于编程语言的文本格式来存储和表示数据。简洁和清晰的层次结构使得JSON成为理想的数据交换语言。易于人阅读和编写,同时也易于机器解析和生成,并有效提升网络传输效率。JavaScrip对象和JSON之间可以非常方便地转化。JavaScript内置了JSON的解析,因此在JS中可以直接使用JSON;而把任何JavaScript对象编程JSON,就是把这个对象序列化成一个JSON格式的字符串,这样就能够通过网络传递给其他计算机。

二,Python读取JSON文件

仔细观察JSON的格式不难发现,它其实就是Python中的字典。因此,Python对JSON的读取非常简单,一个JSON文件经过json.load()以后,就变成了Python中的字典。

import json filename='data\github_python_stars.json'with open(filename,'r',encoding='utf-8') as file:  data=json.load(file)  
 #<class 'dict'>,JSON文件读入到内存以后,就是一个Python中的字典。  
# 字典是支持嵌套的,  
print(type(data))

三,Python写入JSON文件

同样的,JSON中的字典通过json.dump(),就可以把字典写入到JSON文件中:

import jsonmydict={'name':'leon','age':'30','email':'xxxx@163.com'}file='test.json'with open(file,'w',encoding='utf-8') as f:  
json.dump(mydict,f)  
 print("加载入文件完成...")

总结

以上所述是小编给大家介绍的JSON文件及Python对JSON文件的读写操作,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的!

Python 相关文章推荐
rhythmbox中文名乱码问题解决方法
Sep 06 Python
python实现发送邮件功能代码
Dec 14 Python
Python实现PS图像调整之对比度调整功能示例
Jan 26 Python
基于Python实现的微信好友数据分析
Feb 26 Python
python制作填词游戏步骤详解
May 05 Python
详解python opencv、scikit-image和PIL图像处理库比较
Dec 26 Python
Django Serializer HiddenField隐藏字段实例
Mar 31 Python
如何在windows下安装Pycham2020软件(方法步骤详解)
May 03 Python
实例代码讲解Python 线程池
Aug 24 Python
Django用内置方法实现简单搜索功能的方法
Dec 18 Python
在pycharm中无法import所安装的库解决方案
May 31 Python
彻底弄懂Python中的回调函数(callback)
Jun 25 Python
Python实现登陆文件验证方法
Oct 06 #Python
python对日志进行处理的实例代码
Oct 06 #Python
浅析Python函数式编程
Oct 06 #Python
Python实现iOS自动化打包详解步骤
Oct 03 #Python
Python中GIL的使用详解
Oct 03 #Python
Python线程同步的实现代码
Oct 03 #Python
详解通过API管理或定制开发ECS实例
Sep 30 #Python
You might like
虫族 Zerg 历史背景
2020/03/14 星际争霸
php pack与unpack 摸板字符字符含义
2009/10/29 PHP
php 数组使用详解 推荐
2011/06/02 PHP
6个超实用的PHP代码片段
2015/08/10 PHP
PHP面向对象编程之深入理解方法重载与方法覆盖(多态)
2015/12/24 PHP
PHP中模拟链表和链表的基本操作示例
2016/02/27 PHP
php版微信js-sdk支付接口类用法示例
2016/10/12 PHP
PHP封装的多文件上传类实例与用法详解
2017/02/07 PHP
Javascript实例教程(19) 使用HoTMetal(2)
2006/12/23 Javascript
把textarea中字符串里含有的回车换行替换成&amp;lt;br&amp;gt;的javascript代码
2007/04/20 Javascript
js控制框架刷新
2008/08/01 Javascript
javascript Array.remove() 数组删除
2009/08/06 Javascript
javascript KeyDown、KeyPress和KeyUp事件的区别与联系
2009/12/03 Javascript
TinyMCE 新增本地图片上传功能
2010/11/05 Javascript
js 动态修改css文件的方法
2014/08/05 Javascript
jQuery 回调函数(callback)的使用和基础
2015/02/26 Javascript
AngularJs Understanding the Model Component
2016/09/02 Javascript
JS动态添加选项案例分析
2016/10/17 Javascript
深入理解vue中的$set
2017/06/01 Javascript
详解nodejs实现本地上传图片并预览功能(express4.0+)
2017/06/28 NodeJs
浅谈vue的props,data,computed变化对组件更新的影响
2018/01/16 Javascript
Vue父子组件之间的通信实例详解
2018/09/28 Javascript
d3绘制基本的柱形图的实现代码
2018/12/12 Javascript
Element DateTimePicker日期时间选择器的使用示例
2020/07/27 Javascript
python递归查询菜单并转换成json实例
2017/03/27 Python
Python3.X 线程中信号量的使用方法示例
2017/07/24 Python
python f-string式格式化听语音流程讲解
2019/06/18 Python
Django框架安装方法图文详解
2019/11/04 Python
Python制作一个仿QQ办公版的图形登录界面
2020/09/22 Python
详解Python中第三方库Faker
2020/09/25 Python
css3 响应式媒体查询的示例代码
2019/09/25 HTML / CSS
通过HTML5 Canvas API绘制弧线和圆形的教程
2016/03/14 HTML / CSS
英国玛莎百货新西兰:Marks & Spencer New Zealand
2019/07/21 全球购物
共产党员岗位承诺书
2014/05/29 职场文书
公司档案管理制度
2015/08/05 职场文书
简单了解 MySQL 中相关的锁
2021/05/25 MySQL