Python中json模块的使用

Python中json的使用

(1)将Python数据类型转换json对象-encode

1
2
3
json.dump()
json.dumps()
json.JSONEncoder()

其中,Python的数据类型转成json数据类型的映射表为:

(2)将json对象转换成Python数据类型-decode

1
2
3
json.load()
json.loads()
json.JSONDecoder()

其中,json的数据类型转成Python的数据类型的映射表为:

dump/load与dumps/loads

json模块提供了一种很简单的方式来编码和解码JSON数据,其中两个主要的函数是json.dumps()json.loads(),这也是我们经常使用的json模块中的函数。举例来说:

1
2
3
4
5
6
7
8
9
10
import json

data = {
'name': 'ACME',
'shares': 100,
'price': 542.23
}

json_str = json.dumps(data) #将python对象转换成json对象
data = json.loads(json_str) #将json对象转换成python对象

如果你要处理的是文件而不是字符串,你可以使用json.dump()json.load()来编码和解码JSON数据。举例来说:

1
2
3
4
5
6
7
# Writing JSON data
with open('data.json', 'w') as f:
json.dump(data, f) #将Python对象转换成json对象并持久化到文件中

# Reading data back
with open('data.json', 'r') as f:
data = json.load(f) #将文件中的json对象转换成Python对象