TypeError: Object of type bytes is not JSON serializable
时间: 2024-02-04 07:01:54 浏览: 281
浅析Python 3 字符串中的 STR 和 Bytes 有什么区别
这个错误通常会在尝试将字节类型的数据序列化为JSON字符串时出现。需要先将字节数据转换为字符串类型,然后再进行序列化操作。
可以使用bytes.decode()方法将字节类型的数据转换为字符串类型,例如:
```python
import json
byte_data = b'{"name": "John", "age": 30}'
str_data = byte_data.decode('utf-8')
json_data = json.dumps(str_data)
```
这里先将字节数据b'{"name": "John", "age": 30}'使用decode()方法转换为字符串数据'{"name": "John", "age": 30}',然后再使用json.dumps()方法将字符串数据序列化为JSON字符串。
如果需要将JSON字符串转换为字节数据,则可以使用字符串的encode()方法将字符串转换为字节数据,例如:
```python
import json
json_data = '{"name": "John", "age": 30}'
byte_data = json_data.encode('utf-8')
```
这里先将JSON字符串'{"name": "John", "age": 30}'使用encode()方法转换为字节数据b'{"name": "John", "age": 30}'。
阅读全文