def a(L):
return L+[1]
x=[1]
print(a([1]),x)
# obj2json
class A():
def __init__(self):
self.name = 1
self.children=[]
self.children_dic={1:'a',2:'b'}
def __str__(self):
return 'A'
def sd(self):
return 'A'
def todict(self):
return 'A'
a1=A()
a2=A()
a3=A()
# a3.children=[a1,a2]
a3.children_dic={1:a1,2:a2}
print(1)
# 1. 先把对象转化为字典.
class fromobj2dict():
import json
def is_basic_value(self,obj):
# 定义基本类型集合
basic_types = (int, float, str, bool, type(None))
# 检查对象类型是否在基本类型集合中
return isinstance(obj, basic_types)
# print(is_basic_value(42)) # True(整数)
# print(is_basic_value("hello")) # True(字符串)
# print(is_basic_value(True)) # True(布尔值)
# print(is_basic_value([1, 2, 3])) # True(列表)
# print(is_basic_value(None)) # True(None)
def to_dict(self,obj):
if self.is_basic_value(obj):
return obj
if isinstance(obj, tuple):
return [ self.to_dict(v) for v in obj]
if isinstance(obj, list):
return [ self.to_dict(v) for v in obj]
if isinstance(obj, dict):
return {k: self.to_dict(v) for k, v in obj.items()}
elif hasattr(obj, "__dict__"):
return {k: self.to_dict(v) for k, v in obj.__dict__.items()}
else:
raise TypeError("Unserializable object: {}".format(obj))
a=fromobj2dict().to_dict(a3)
import json
print(1)
python 任意对象转dict
·
更多推荐
所有评论(0)