【发布时间】:2016-05-07 20:45:47
【问题描述】:
我有一个自定义对象,我想使用 python 的记录器模块进行记录。
我用字典记录它:
logger.info({
'message': 'something happened',
'object': my_custom_object,
})
问题是记录器使用ujson.dumps() 将输入序列化为logger.info()。
ujson.dumps() 将 my_custom_object 转换为实例变量的名称列表。这不是很有帮助。我想指定一个自定义的 toJson 或 toDict 方法,以便在尝试序列化此方法时使用。
这可能吗?
有点像如何指定__str__ 方法,并且任何时候python 尝试将您的对象转换为字符串,它都会调用该方法。
【问题讨论】: