[Python]json.dumps出現TypeError : Object of type 'datetime' is not JSON serializable 錯誤
最近在輸出json時,一直會出現TypeError : Object of type 'datetime' is not JSON serializable
。
就把錯誤訊息拿去餵狗了一下。
發現到因為json dumps原功能是將dict轉化為str,但不支援轉化時間,所以必須要將json類部分內容重新改寫來處理。
所以必須加一段程式碼在前面並且在dumps
時引用。
use this code.
class dateEncode(json.JSONEncoder):
def default(self, obj):
if isinstance(obj, datetime.datetime):
return obj.strftime('%Y-%m-%d %H:%M:%S')
else:
return json.JSONEncoder.default(self, obj)
最後在json.dumps
時引入上面的class
。
dump = json.dumps(yourJson, cls = dateEncode)