日期:2014-05-16  浏览次数:20414 次

python中自定义类对象json字符串化的方法

1. 用 json 或者simplejson 就可以

2.定义转换函数:

def convert_to_builtin_type(obj): print 'default(', repr(obj), ')' # 把MyObj对象转换成dict类型的对象

d = {  }

d.update(obj.__dict__)

return d

 

3. 定义类

class Object():
 name=""
 size=0
  def __init__(self,name', size,):
  self.name'= name'
  self.size =  size
 

4. 生成对象

obj= Object(name, size)

5.dumps执行,引入转换函数

print json.dumps(obj, default=convert_to_builtin_type)

 

特别说明,如果是python的内置对象,如列表,float,str等,不需要转换函数。 否则json模块默认是没法处理的,会抛出异常:TypeError xx is not JSON serializable