python object对象转dict字典(支持递归)
·
代码
def object2Map(obj:object):
"""对象转Dict"""
if obj is None:
return None
if type(obj) == list:
return [ object2Map(obj_item) for obj_item in obj]
if obj.__dict__ is None:
return obj
m = {}
for k in obj.__dict__.keys():
v = obj.__dict__[k]
if hasattr(v, "__dict__"):
m[k] = object2Map(v)
else:
m[k] = v
return m
测试
class Test:
def __init__(self):
self.a = 1
self.b = 2
test = Test()
test.c = Test()
print(object2Map(test))
结果如下:

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。
更多推荐


所有评论(0)