python json 序列化时间报错解决

import json 
import datetime
import date
class DateEncoder(json.JSONEncoder):
    """
    解决json序列化时时间不能序列化问题
    例:json.dumps(data, cls=DateEncoder)
    """
    def default(self, obj):
        if isinstance(obj, datetime):
            return obj.strftime('%Y-%m-%d %H:%M:%S')
        elif isinstance(obj, date):
            return obj.strftime("%Y-%m-%d")
        else:
            return json.JSONEncoder.default(self, obj)


def data_default(obj):
    """
    解决json序列化时时间不能序列化问题
    例:json.dumps(data, default=data_default)
    :param obj:
    :return:
    """
    if isinstance(obj, datetime):
        return obj.strftime('%Y-%m-%d %H:%M:%S')
    elif isinstance(obj, date):
        return obj.strftime("%Y-%m-%d")
    else:
        return obj

#例:
json.dumps([{"1":datetime.datetime(2019, 4, 24, 16, 47, 40, 636361)}], cls=data_default)
json.dumps([{"1":datetime.datetime(2019, 4, 24, 16, 47, 40, 636361)}], default=DateEncoder)
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容