什么是json
JSON是一种轻量级的数据交互格式。可以按照JSON指定的格式去组织和封装数据
JSON本质上是一个带有特定格式的字符串
主要功能:json就是一种在各个编程语言中流通的数据格式,负责不同编程语言中的数据传递和交互. 类似于:
国际通用语言-英语
中国56个民族不同地区的通用语言-普通话
各种编程语言存储数据的容器不尽相同,在Python中有字典dict这样的数据类型, 而其它语言可能没有对应的字典。
为了让不同的语言都能够相互通用的互相传递数据,JSON就是一种非常良好的中转数据格式。如下图,以Python和C语言互传数据为例:
json格式的数据要求很严格, 下面我们看一下他的要求
- # json数据的格式可以是:
- {"name":"admin","age":18}
-
-
- # 也可以是:
- [{"name":"admin","age":18},{"name":"root","age":16},{"name":"张三","age":20}]
- # 导入json模块
- import json
-
- # 准备符合格式json格式要求的python数据
- data = [{"name": "老王", "age": 16}, {"name": "张三", "age": 20}]
-
- # 通过 json.dumps(data) 方法把python数据转化为了 json数据
- data = json.dumps(data)
-
- # 通过 json.loads(data) 方法把json数据转化为了 python数据
- data = json.loads(data)
1. json:是一种轻量级的数据交互格式, 采用完全独立于编程语言的文本格式来存储和表示数据(就是字符串)
Python语言使用JSON有很大优势,因为:JSON无非就是一个单独的字典或一个内部元素都是字典的列表
所以JSON可以直接和Python的字典或列表进行无缝转换。
2. json格式数据转化
通过 json.dumps(data) 方法把python数据转化为了 json数据
data = json.dumps(data)
如果有中文可以带上:ensure_ascii=False参数来确保中文正常转换
通过 json.loads(data) 方法把josn数据转化为了 python列表或字典
data = json.loads(data)