我有一个类和一个将类对象更改为json的函数:
class AuthorizedUser:
def __init__(self, authorized, comsi, given_name, access_role):
self.authorized = authorized
self.comsi = comsi
self.given_name = given_name
self.access_role = access_role
def to_json(self):
return json.dumps(self, default=lambda o: o.__dict__)
我还有一个可以工作的json:
authorized_user_json = {
'authorized': authorized_user.authorized,
'comsi': authorized_user.comsi,
'given_name': authorized_user.given_name,
'access_role': authorized_user.access_role
}
结果:
{'authorized': True, 'comsi': None, 'given_name': None, 'access_role': 'standard_user'}
但是当我使用时:
authorized_user_json_ss = authorized_user.to_json()
结果是:
<SecureCookieSession {'current_user': '{"authorized": true, "comsi": null, "given_name": null, "access_role": "standard_user"}'}>
使用to_json()函数时,为什么还要用引号引起来?
答案 0 :(得分:1)
JSON是非结构化数据的文本表示形式,它使将数据从一种语言传递到另一种语言变得更加容易。
在Python中,JSON只是存储在文本中的字典。
这是否 JSON,它是python DICT:
authorized_user_json = {
'authorized': authorized_user.authorized,
'comsi': authorized_user.comsi,
'given_name': authorized_user.given_name,
'access_role': authorized_user.access_role
}