python2.7 json 转换日期的处理的示例
python2.7中集成了json的处理(simplejson),但在实际应用中,从mysql查询出来的数据,通常有日期格式,这时候,会报一个错:
TypeError:datetime.datetime(2007,7,23,12,24,25)isnotJSONserializable
说明日期转换出问题,后来再网上找到了解决办法。
importjson
fromdatetimeimportdate,datetime
def__default(obj):
ifisinstance(obj,datetime):
returnobj.strftime('%Y-%m-%dT%H:%M:%S')
elifisinstance(obj,date):
returnobj.strftime('%Y-%m-%d')
else:
raiseTypeError('%risnotJSONserializable'%obj)
printjson.dumps({
'd':datetime.now(),
'today':date.today(),
'x':111
},default=__default)
采用类似的方式,在得到mysql数据集后,需要序列化时,用如下方式就可以了。
conn=self.getConnection(); cursor=conn.cursor(); cursor.execute(sqlText,params); result=cursor.fetchall() jsonstr=json.dumps(myresult,default=__default) printjsonstr
关键点在于覆盖了default方法。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。