为了账号安全,请及时绑定邮箱和手机立即绑定

如何克服“datetime.datetime不能JSON序列化”?

如何克服“datetime.datetime不能JSON序列化”?

青春有我 2019-06-28 15:46:57
如何克服“datetime.datetime不能JSON序列化”?我有一个基本的原则如下:sample = {}sample['title'] = "String"sample['somedate'] = somedatetimehere当我试着去做jsonify(sample)我得到:TypeError: datetime.datetime(2012, 8, 8, 21, 46, 24, 862000) is not JSON serializable我能做些什么使我的字典样本能够克服上面的错误?注意:虽然它可能与此无关,但字典是通过从MongoDB检索记录生成的,当我打印出来时,这些记录都是从MongoDB中提取出来的。str(sample['somedate']),输出是2012-08-08 21:46:24.862000.
查看完整描述

3 回答

?
慕哥9229398

TA贡献1877条经验 获得超6个赞

我刚刚遇到了这个问题,我的解决方案是子类json.JSONEncoder:

from datetime import datetimeimport jsonclass DateTimeEncoder(json.JSONEncoder):
    def default(self, o):
        if isinstance(o, datetime):
            return o.isoformat()

        return json.JSONEncoder.default(self, o)

在你的电话里做如下的事情:json.dumps(yourobj, cls=DateTimeEncoder)这个.isoformat()我从上面的一个答案中得到的。


查看完整回答
反对 回复 2019-06-28
  • 3 回答
  • 0 关注
  • 599 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信