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 相关文章推荐
使用PyV8在Python爬虫中执行js代码
Feb 16 Python
python3.4下django集成使用xadmin后台的方法
Aug 15 Python
PyQt5实现拖放功能
Apr 25 Python
使用Python通过win32 COM实现Word文档的写入与保存方法
May 08 Python
利用python如何处理百万条数据(适用java新手)
Jun 06 Python
基于wxPython的GUI实现输入对话框(1)
Feb 27 Python
python实现弹窗祝福效果
Apr 07 Python
python实现感知机线性分类模型示例代码
Jun 02 Python
python调用matplotlib模块绘制柱状图
Oct 18 Python
python构建指数平滑预测模型示例
Nov 21 Python
用python实现一个简单的验证码
Dec 09 Python
使用Python开发贪吃蛇游戏 SnakeGame
Apr 30 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
全国FM电台频率大全 - 1 北京市
2020/03/11 无线电
使用apache模块rewrite_module (转)
2007/02/14 PHP
PHP 图片水印类代码
2012/08/27 PHP
PHP 数组和字符串互相转换实现方法
2013/03/26 PHP
Codeigniter注册登录代码示例
2014/06/12 PHP
PHP网页游戏学习之Xnova(ogame)源码解读(三)
2014/06/23 PHP
symfony表单与页面实现技巧
2015/01/26 PHP
Symfony2框架学习笔记之表单用法详解
2016/03/18 PHP
DOMAssitant最新版 DOMAssistant 2.5发布
2007/12/25 Javascript
基于Jquery的淡入淡出的特效基础练习
2010/12/13 Javascript
uploadify 3.0 详细使用说明
2012/06/18 Javascript
Javascript this 的一些学习总结
2012/08/31 Javascript
node.js中的fs.readSync方法使用说明
2014/12/17 Javascript
JS实现DIV容器赋值的方法
2015/12/14 Javascript
js实现正则匹配中文标点符号的方法
2015/12/23 Javascript
javascript实现表单验证
2016/01/29 Javascript
Javascript删除指定元素节点的方法
2016/06/21 Javascript
浅谈Angular2 模块懒加载的方法
2017/10/04 Javascript
详解微信小程序canvas圆角矩形的绘制的方法
2018/08/22 Javascript
Bootstrap实现模态框效果
2019/09/30 Javascript
Python Sleep休眠函数使用简单实例
2015/02/02 Python
Django Aggregation聚合使用方法解析
2019/08/01 Python
Django项目使用ckeditor详解(不使用admin)
2019/12/17 Python
OpenCV 表盘指针自动读数的示例代码
2020/04/10 Python
Keras SGD 随机梯度下降优化器参数设置方式
2020/06/19 Python
PyCharm2020.1.2社区版安装,配置及使用教程详解(Windows)
2020/08/07 Python
纯CSS3实现图片无间断轮播效果
2016/08/25 HTML / CSS
HTML5中新标签和常用标签详解
2014/03/07 HTML / CSS
波兰最大的儿童服装连锁店之一:5.10.15.
2018/02/11 全球购物
澳大利亚在线划船、露营和钓鱼商店:BCF Australia
2020/03/22 全球购物
What's the difference between Debug and Trace class? (Debug类与Trace类有什么区别)
2013/09/10 面试题
党政领导班子群众路线对照检查材料
2014/10/26 职场文书
2014年最新版离婚协议书范本
2014/11/25 职场文书
重温入党誓词主持词
2015/06/29 职场文书
2016大一新生军训心得体会
2016/01/11 职场文书
SQL 尚未定义空闲 CPU 条件 - OnIdle 作业计划将不起任何作用
2021/06/30 SQL Server