如何将含字节类型的Python字典转换为JSON对象?
解决字节类型字典转JSON的问题
你的字典中所有键和值都是bytes类型,而JSON标准仅支持字符串、数字、布尔值、数组、对象和null,无法直接序列化bytes对象,所以直接用json.dumps会报错。解决核心是先把所有bytes对象解码为字符串,再进行JSON序列化。
具体实现代码
import json # 你的原始字节字典 byte_dict = {b'one': b'one', b'two': b'two', b'three': b'three'} # 遍历字典,将所有键值对解码为UTF-8字符串 string_dict = {key.decode('utf-8'): value.decode('utf-8') for key, value in byte_dict.items()} # 转换为JSON字符串(即JSON对象的文本形式) json_result = json.dumps(string_dict) # 输出结果 print(json_result)
运行后会得到标准JSON字符串:
{"one": "one", "two": "two", "three": "three"}
额外说明
- 如果你的字节数据不是UTF-8编码,可以替换
decode()中的编码参数(比如'gbk'); - 若存在解码异常风险,可添加错误处理参数,比如
decode('utf-8', errors='replace')(用�替换无法解码的字符)或errors='ignore'(忽略无法解码的字符)。
内容的提问来源于stack exchange,提问作者JKE
相关产品推荐
相关产品推荐

