python实现class对象转换成json/字典的方法
本文实例讲述了python实现class对象转换成json字典的方法。分享给大家供大家参考,具体如下:
#-*-encoding:UTF-8-*-
classStudent:
name=''
age=0
def__init__(self,name,age):
self.name=name
self.age=age
defconvert_to_dict(obj):
'''把Object对象转换成Dict对象'''
dict={}
dict.update(obj.__dict__)
returndict
defconvert_to_dicts(objs):
'''把对象列表转换为字典列表'''
obj_arr=[]
foroinobjs:
#把Object对象转换成Dict对象
dict={}
dict.update(o.__dict__)
obj_arr.append(dict)
returnobj_arr
defclass_to_dict(obj):
'''把对象(支持单个对象、list、set)转换成字典'''
is_list=obj.__class__==[].__class__
is_set=obj.__class__==set().__class__
ifis_listoris_set:
obj_arr=[]
foroinobj:
#把Object对象转换成Dict对象
dict={}
dict.update(o.__dict__)
obj_arr.append(dict)
returnobj_arr
else:
dict={}
dict.update(obj.__dict__)
returndict
stu=Student('zhangsan',20)
print'-----------'
printconvert_to_dict(stu)
print'-----------'
printconvert_to_dicts([stu,stu])
print'-----------'
printclass_to_dict(stu)
print'-----------'
printclass_to_dict([stu,stu])
stua=Student('zhangsan',20)
stub=Student('lisi',10)
stu_set=set()
stu_set.add(stua)
stu_set.add(stub)
printclass_to_dict(stu_set)
运行结果如下:
-----------
{'age':20,'name':'zhangsan'}
-----------
[{'age':20,'name':'zhangsan'},{'age':20,'name':'zhangsan'}]
-----------
{'age':20,'name':'zhangsan'}
-----------
[{'age':20,'name':'zhangsan'},{'age':20,'name':'zhangsan'}]
[{'age':10,'name':'lisi'},{'age':20,'name':'zhangsan'}]
希望本文所述对大家Python程序设计有所帮助。
热门推荐
10 小红书平安祝福语简短
11 生日祝福语大全女孩简短
12 收生日红包祝福语 简短
13 领证幽默祝福语简短
14 法考面试祝福语简短
15 老哥出门祝福语简短语
16 送灯祝福语简短独特
17 幼儿狗年祝福语大全简短
18 好听的元旦简短祝福语