python执行json.loads(...)时遇到的错误

    最近在编写web程序需要用到redis来存储json格式,因为redis的存储室二进制,所以在提取数据的时候需要用到将二进制解码为utf-8,然后再转化为json。

    前面解码没问题用decode(‘utf-8’)就可以了,原来的代码是这样子的:

   messages.append(json.loads(mess.decode('utf-8')))
    好像没啥问题,但结果却报错了!!!

    ValueError: Expecting property name enclosed in double quotes: line 1 column 2 (char 1)

    大概提示是要用双引号,网上搜索了一个也好像是说由于json的key没有双引号,导致json解析错误的。

    改正代码如下:

   messages.append(json.loads(mess.decode('utf-8').replace("'", "\"")))
    利用replace将单引号改成双引号,就可以了。



你可能感兴趣的:(python,flask,json)