Python 错误:TypeError: Object of type 'bytes' is not JSON serializable
Python 错误:TypeError: Object of type 'bytes' is not JSON serializable
当尝试将字节类型的对象转换为 JSON 格式时,会发生此错误。JSON 格式只接受字符串类型,因此需要将字节类型的对象转换为字符串类型才能进行 JSON 序列化。
解释
'TypeError: Object of type 'bytes' is not JSON serializable' 错误表示您尝试将一个 'bytes' 类型的对象直接传递给 JSON 序列化函数,而 JSON 序列化函数无法直接处理 'bytes' 类型。
解决方案
使用 decode 方法将字节转换为字符串,例如:
import json
my_bytes = b'{"name": "John", "age": 30}'
my_string = my_bytes.decode('utf-8') # 将字节转换为字符串
my_dict = json.loads(my_string) # 将字符串转换为字典
print(my_dict)
输出:
{'name': 'John', 'age': 30}
总结
在进行 JSON 序列化操作之前,确保您的对象是字符串类型。使用 decode 方法将字节类型转换为字符串,并使用 json.loads 函数将字符串转换为字典或列表。
原文地址: https://www.cveoy.top/t/topic/oubI 著作权归作者所有。请勿转载和采集!