Chinaunix

标题: 让python json encode datetime类型 [打印本页]

作者: life-boy    时间: 2011-03-23 22:54
标题: 让python json encode datetime类型
python2.6+ 自带的json模块,不支持datetime的json encode,每次都需要手动转为字符串,很累人,我们可以自己封装一个简单的方法处理此问题
  1. import json
  2. from datetime import date, datetime


  3. def __default(obj):
  4.     if isinstance(obj, datetime):
  5.         return obj.strftime('%Y-%m-%dT%H:%M:%S')
  6.     elif isinstance(obj, date):
  7.         return obj.strftime('%Y-%m-%d')
  8.     else:
  9.         raise TypeError('%r is not JSON serializable' % obj)

  10. print json.dumps({'d': datetime.now(), 'today': date.today(), 'x': 111},
  11.                      default=__default)
复制代码

作者: anthonyfeng    时间: 2011-03-24 12:42
受教了。
作者: masaic117    时间: 2011-03-24 15:57
:wink:不错
作者: smallfish_xy    时间: 2011-03-24 16:59
可以到官方,或者给bob发邮件。呵呵。
作者: lipeng8821    时间: 2011-03-24 17:59
www.upython.com  你的PYTHON 开源社区




欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2