v = json.loads("{'test':'test'}")

Diez B. Roggisch deets at nospam.web.de
Sun Jan 25 17:51:41 EST 2009


gert schrieb:
> On Jan 25, 11:16 pm, Дамјан Георгиевски <gdam... at gmail.com> wrote:
>>> raise ValueError(errmsg("Expecting property name", s, end))
>>> http://docs.python.org/library/json.html
>>> What am I doing wrong ?
>> try this
>> v = json.loads('{"test":"test"}')
>>
>> JSON doesn't support single quotes, only double quotes.
> 
> the funny part is when you print(v) you get
> {'test': 'test'}

So what? That's python deciding to print strings using single-quotes. 
That has nothing to do with JSON.

The important part is this:

 >>> json.dumps(json.loads('{"test":"test"}'))
'{"test": "test"}'

> Single quotes works in every browser that support json so i
> recommended python should support it too, besides it looks much
> cleaner
> {'test': 'test'}
> {"test": "test"}
> 
> It can not be that hard to support both notation can it ?

It's not hard, but it's not standard-conform.

Most browsers even accept something like this:

{foo : "bar"}

But all of this is not JSON.

Diez



More information about the Python-list mailing list