- JSON(JavaScript Object Notation)是这一种轻量级的数据交换格式,易于人阅读和编写。
- 用法
函数 | 描述 |
---|---|
json.dumps | 将python编码成JSON字符串 |
json.loads | 将已编码的JSON字符串解码为python对象 |
encode | 将python对象编码为JSON字符串 |
decode | 将已编码的JSON字符串解码为pthon对象 |
- 实例
(1) json.dumps
import json
l1 = [{'a': 1, 'b': 2, 'c': 3, 'd': 4, 'e': 5}]
l1_json = json.dumps(l1)
print(l1_json, type(l1_json))
输出:
[{"a": 1, "b": 2, "c": 3, "d": 4, "e": 5}] <class 'str'>
(2) json.loads
注意:字符串l2中字符串要写成""这种标准,不然会报错。
l2 = '[{"a": 1, "b": 2, "c": 3}]'
l2_eval = eval(l2)
print(l2, type(l2_eval), type(l2))
l2_json = json.loads(l2)
print(l2_json, type(l2_json))
for d in l2_json:
print(d, type(d))
输出:
[{"a": 1, "b": 2, "c": 3}] <class 'list'> <class 'str'>
[{'a': 1, 'b': 2, 'c': 3}] <class 'list'>
{'a': 1, 'b': 2, 'c': 3} <class 'dict'>
(3) demjson.encode
data = [{"a": 1, "b": 2, "c": 3}]
json = demjson.encode(data)
print(json, type(json))
输出:
[{"a":1,"b":2,"c":3}] <class 'str'>
(4) demjson.decode
注意:demjson.deocde() 与 json.load()的区别,demjson.decode()可以将不规范的字符串也转换为相应类型。
# data1 = '[{"a": 1, "b": 2, "c": 3}]'
data1 = "[{'a': 1, 'b': 2}]"
text = demjson.decode(json)
print(text, type(text))
输出:
[{'a': 1, 'b': 2, 'c': 3}] <class 'list'>