类对象与 JSON 串互转疑问

2015-07-19 22:14:41 +08:00
 explist
import json as js

class test:
def __init__(self,List):
self.a = List

json_str = js.dumps(test(list('abc')),default=lambda obj: obj.a)

test_obj = js.loads(json_str,object_hook=lambda obj : test(obj))

print(type(test_obj)) # 为什么此处结果为list
2074 次点击
所在节点    Python
1 条回复
socrates
2015-07-21 19:04:09 +08:00
如文档写到中

object_hook is an optional function that will be called with the result of any object literal decoded (a dict). The return value of object_hook will be used instead of the dict. This feature can be used to implement custom decoders (e.g. JSON-RPC class hinting).

所以,list对象根本不会触发object_hook

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/206813

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX