程序员最近都爱上了这个网站  程序员们快来瞅瞅吧!  it98k网:it98k.com

本站消息

站长简介/公众号

  出租广告位,需要合作请联系站长

+关注
已关注

分类  

字符串(0)

异常(0)

标签  

python字符串(0)

异常(0)

日期归档  

2023-05(1)

2023-06(4)

TypeError: Object of type 'datetime' is not JSON serializable

发布于2019-08-17 19:22     阅读(475)     评论(0)     点赞(1)     收藏(4)


json序列化时间对象的时候报错:

    TypeError: Object of type 'datetime' is not JSON serializable
  • 1

解决办法

重写json序列化类

# -*- coding: utf-8 -*-

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, datetime.date):
            return obj.strftime("%Y-%m-%d")

        else:
            return json.JSONEncoder.default(self, obj)


if __name__ == '__main__':
    data = {"name": "Tom", "birthday": datetime.datetime.now()}
    print(json.dumps(data, cls=DateEncoder))
    # {"name": "Tom", "birthday": "2019-06-06 17:24:19"}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23

参考:
python datetime.datetime is not JSON serializable 报错问题解决



所属网站分类: 技术文章 > 博客

作者:浮沉

链接:https://www.pythonheidong.com/blog/article/48373/d25943fbb1ca992de314/

来源:python黑洞网

任何形式的转载都请注明出处,如有侵权 一经发现 必将追究其法律责任

1 0
收藏该文
已收藏

评论内容:(最多支持255个字符)