zoukankan      html  css  js  c++  java
  • 字定义JSON序列化支持datetime格式序列化

    字定义JSON序列化支持datetime格式序列化

    由于json.dumps无法处理datetime日期,所以可以通过自定义处理器来做扩展,如:

    import json
    from datetime import date
    from datetime import datetime
    
    
    class CustomEncoder(json.JSONEncoder):
        def default(self, field):
            # 自定义部分
            # return 定义的strftime
            if isinstance(field, datetime):
                return field.strftime('%Y-%m-%d %H:%M:%S')
            elif isinstance(field, date):
                return field.strftime('%Y-%m-%d')
            else:
                return json.JSONEncoder.default(self, field)
    
    
    if __name__ == '__main__':
    
        dic = {
            'k1': 'v1',
            'k2': 123,
            'ctime': datetime.now()
        }
    
        # 调用方法 json.dumps(dic变量, cls=CustomEncoder)
        ds = json.dumps(dic, cls=CustomEncoder)
        print(ds)
    

    输出:

    {"k1": "v1", "k2": 123, "ctime": "2018-01-04 14:53:13"}
    
  • 相关阅读:
    I/O模型
    同步异步与协程
    GIL(全局解释器锁)
    解决pycharm启动慢
    操作系统发展史
    TCP和UDP
    粘包问题
    网络编程
    异常
    常用函数汇总
  • 原文地址:https://www.cnblogs.com/baolin2200/p/8193421.html
Copyright © 2011-2022 走看看