Python尽可能高效地将字节转换为字符串字典
我正在尝试高效(快速)地将字节文件转换成字典。 到目前为止,我已经把它解码成str,去掉{}并把它编入字典。但是我仍然得到单字符串引号,所以我不能按键调用dict。我该怎么做Python尽可能高效地将字节转换为字符串字典,python,string,dictionary,byte,Python,String,Dictionary,Byte,我正在尝试高效(快速)地将字节文件转换成字典。 到目前为止,我已经把它解码成str,去掉{}并把它编入字典。但是我仍然得到单字符串引号,所以我不能按键调用dict。我该怎么做 response = b'{"address":"david@gmail.com","username":"david","domain":"gmail.com","md5Hash":
response = b'{"address":"david@gmail.com","username":"david","domain":"gmail.com","md5Hash":"f3c52e5ef3d2b471d0ef51c66c21d10c","suggestion":"","validFormat":true,"deliverable":false,"fullInbox":false,"hostExists":true,"catchAll":false,"gravatar":false,"role":false,"disposable":false,"free":true}'
到目前为止,我采取了以下步骤:
print(response.decode("utf-8"))
{"address":"david@gmail.com","username":"david","domain":"gmail.com","md5Hash":"f3c52e5ef3d2b471d0ef51c66c21d10c","suggestion":"","validFormat":true,"deliverable":false,"fullInbox":false,"hostExists":true,"catchAll":false,"gravatar":false,"role":false,"disposable":false,"free":true}
print({response.decode("utf-8").replace("}","").replace("{","")})
{'"address":"david@gmail.com","username":"david","domain":"gmail.com","md5Hash":"f3c52e5ef3d2b471d0ef51c66c21d10c","suggestion":"","validFormat":true,"deliverable":false,"fullInbox":false,"hostExists":true,"catchAll":false,"gravatar":false,"role":false,"disposable":false,"free":true'}
但是我仍然无法通过按键调用dict,因为”
我需要的是快速、低资源。比如@juanpa.arrivillaga说只要使用
json
模块就可以了
在这里:
导入json
d=json.load(响应)
现在,d
的值是您的解码dict
就像@juanpa.arrivillaga所说的,没有必要使用
.decode()
,json.loads()
可以对字节进行操作。这看起来像json?它甚至不表示有效的Python dict文本,例如false
而不是false
。使用json
模块。这是什么来源?我的问题也是。你甚至不需要。解码,json。加载接受字节对象以及str
对象