1. 基本概念
JSON(JavaScript Object Notation, JS 对象简谱) 是一种轻量级的数据交换格式。它基于 ECMAScript (欧洲计算机协会制定的js规范)的一个子集,采用完全独立于编程语言的文本格式来存储和表示数据。简洁和清晰的层次结构使得 JSON 成为理想的数据交换语言。 易于人阅读和编写,同时也易于机器解析和生成,并有效地提升网络传输效率。(来源:百度百科)
一些合法的json格式
{"a": 1, "b": [1, 2, 3]}
[1, 2, "3", {"a": 4}]
3.14
"plain_text"
2. python数组转换为json
import json
data = [{'a':1, "b":2, 'c':3, "d":4, 'e':5}]
json_data = json.dumps(data)
print(json_data,type(json_data))
–> 输出结果为:(在字典数据类型中,单引号和双引号都可以,转化为json
数据后,都是双引号)
[{"a": 1, "b": 2, "c": 3, "d": 4, "e": 5}] <class 'str'>
3. json数据格式化输出
print(json.dumps(data, sort_keys= True, indent=4, separators=(',',': ')))
–> 输出结果为:(sort_keys
默认是False
,也就是不排序的意思; indent
表示填充空格,这里等于4相当于一个tab
键;separators
分隔符,表示切割的依据)
[
{
"a": 1,
"b": 2,
"c": 3,
"d": 4,
"e": 5
}
]
4. python
与json
数据类型转化对照
python | json |
---|---|
dict | object |
list, tuple | array |
str, unicode | string |
int, long, float | number |
True | true |
False | false |
None | null |
5. 将json
数据转化为python
数据
data = json.loads('[{"a": 1, "b": 2, "c": 3, "d": 4, "e": 5}]')
print(data,type(data))
–> 输出结果为:(结果可以和之前的进行对比,这里就变成了python
的list
数据类型,这里的引号都是变成单引号了)
[{'a': 1, 'b': 2, 'c': 3, 'd': 4, 'e': 5}] <class 'list'>