json.loads(...) ValueError: Expecting value: line 1 column 1 (char 0)

MRAB python at mrabarnett.plus.com
Mon May 9 16:21:05 EDT 2016


On 2016-05-09 20:56, zljubisic at gmail.com wrote:
> Hi,
>
> in python3 my variable looks like this:
>
> a = b'{"uuid":"5730e8666ffa02.34177329","error":""}'
> str(a) = 'b\'{"uuid":"5730e8666ffa02.34177329","error":""}\''
>
> If I execute the following command I get the error:
>
>>>> json.loads(str(a))
> Traceback (most recent call last):
>   File "C:\Program Files (x86)\JetBrains\PyCharm Community Edition 2016.1.2\helpers\pydev\_pydevd_bundle\pydevd_exec2.py", line 3, in Exec
>     exec(exp, global_vars, local_vars)
>   File "<input>", line 1, in <module>
>   File "C:\Program Files\Python34\lib\json\__init__.py", line 318, in loads
>     return _default_decoder.decode(s)
>   File "C:\Program Files\Python34\lib\json\decoder.py", line 343, in decode
>     obj, end = self.raw_decode(s, idx=_w(s, 0).end())
>   File "C:\Program Files\Python34\lib\json\decoder.py", line 361, in raw_decode
>     raise ValueError(errmsg("Expecting value", s, err.value)) from None
> ValueError: Expecting value: line 1 column 1 (char 0)
>
> Why I am getting this error?
> If I set variable a to the '{"uuid":"5730e8666ffa02.34177329","error":""}' everything works as expected.
>
The b-prefix is Python-specific. It's not valid JSON syntax.

The JSON format is defined here:

http://www.json.org/




More information about the Python-list mailing list