前言
json是目前比较通用简洁的,不同语言之间传递的对象,并且是JS的标准对象,所以学习Python的JSON操作也是很有必要的。
本文是通过学习廖雪峰老师的教程进行的记录,仅用于个人学习记录,请大家支持原创。
dict 与JSON
Python中dict 对应的就是JSON中的{}
dict序列化成JSON字符串
类似于JS中的 JSON.stringify(Object)
import json
d = dict(name='Bob', age=20, score=88)
print(json.dumps(d))
结果如下:
>>> '{"age": 20, "score": 88, "name": "Bob"}'
JSON字符串反序列化成dict
类似于JS中的 JSON.parse(String)
json_str = '{"age": 20, "score": 88, "name": "Bob"}'
print(json.loads(json_str))
结果如下:
>>> {'age': 20, 'score': 88, 'name': 'Bob'}
Class实例化的对象转换成JSON对象
类似JAVA语言,我们经常需要将Class实例化出来的对象转换成JSON进行与前端的交互:
import json
class Student(object):
def __init__(self, name, age, score):
self.__name = name
self.__age = age
self.__score = score
def student2dict(self):
return {
'name': self.__name,
'age': self.__age,
'score': self.__score
}
s = Student('tonny', 20, 59)
print(json.dumps(s, default=Student.student2dict))
结果如下:
>>> {"name": "tonny", "age": 20, "score": 59}