1.python3运行报错:TypeError: Object of type ‘type’ is not JSON serializable解决方法
原因:
这个问题是由于json.dumps()函数引起的。
dumps是将dict数据转化为str数据,
但是dict数据中包含byte数据所以会报错。
解决:编写一个解码类 遇到byte就转为str
import json
class MyEncoder(json.JSONEncoder):
def default(self, obj):
"""
只要检查到了是bytes类型的数据就把它转为str类型
:param obj:
:return:
"""
if isinstance(obj, bytes):
return str(obj, encoding='utf-8')
return json.JSONEncoder.default(self, obj)
引用自–https://www.cnblogs.com/qiqi-yhq/articles/12557870.html
2.遇到中文序列化后无法正常显示
原因:
python json中利用dumps将字典转换为字符串时,如果有中文会显示文字的ascii码而不是中文
解决:
加上 ensure_ascii=False 即可
result = json.dumps(my_list,ensure_ascii=False)