Python 自带Json处理日期格式出错 - 日记屋
Python 自带Json处理日期格式出错
发布时间:

使用python自带的json,将数据转换为json数据时,datetime格式的数据会报错,出现如下错误提示:datetimeTypeError: datetime.datetime.now() is not JSON serializable。

这是因为python自带的json无法处理,只好重写构造json类,遇到日期特殊处理,其余的用内置的就行。
代码:

import json  
import datetime  

class DateEncoder(json.JSONEncoder):  
    def default(self, obj):  
        if isinstance(obj, datetime.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) 

调用:

print(json.dumps(source_data, cls=DateEncoder)  )

本周热门