Python3.7中文字符编码问题

Python3.7下使用json.dumps()报错:
TypeError: Object of type bytes is not JSON serializable

 

解决:
创建myEncoding.py
#coding:utf-8
import datetime
import json
import decimal

class MyEncoding(json.JSONEncoder):

   def default(self, obj):
     if isinstance(obj, bytes): #返回内容如果包含bytearray类型的数据
       return str(obj, encoding='utf-8')
     elif isinstance(obj, datetime.datetime): #返回内容如果包含datetime类型的数据
       return obj.strftime('%Y-%m-%d %H:%M:%S')
     elif isinstance(obj, decimal.Decimal): #返回内容如果包含Decimal类型的数据
       return float(obj)
     super(MyEncoding, self).default(obj)

     return json.JSONEncoder.default(self, obj)


您可以选择一种方式赞助本站

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: