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

yipeiwu_com7年前Python基础

一,什么是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字典的setdefault的巧妙用法

现在有一个员工字典,类似这样的结构 staff_dic = {"name":"灭霸", "age": 10000, "hobbies":["打响指", "扣脚"]} 假设我们要给员...

Python设计模式之代理模式简单示例

Python设计模式之代理模式简单示例

本文实例讲述了Python设计模式之代理模式。分享给大家供大家参考,具体如下: 代理模式在一般形式上是一个类函数接口。代理可以是这些事物的接口:网络连接,存储的对象,文件,或者其他资源(...

浅析Python 中整型对象存储的位置

在 Python 整型对象所存储的位置是不同的, 有一些是一直存储在某个存储里面, 而其它的, 则在使用时开辟出空间. 说这句话的理由, 可以看看如下代码: a = 5 b = 5...

详解centos7+django+python3+mysql+阿里云部署项目全流程

详解centos7+django+python3+mysql+阿里云部署项目全流程

(PS:本文假设你已经在本地联调好django和客户端,只是需要将django部署到外网) 购买阿里云服务器 到[阿里云官网],选择轻量应用服务器, 步骤如图所示: 地域随便选...

pyqt5 实现 下拉菜单 + 打开文件的示例代码

如下所示: # -*- coding: utf-8 -*- import sys import os from PyQt5 import QtCore, QtGui, QtWidge...