(original) (raw)
changeset: 75778:613919591a05 branch: 3.2 parent: 75771:32d3ecacdabf user: Senthil Kumaran senthil@uthcode.com date: Sat Mar 17 00:40:34 2012 -0700 files: Doc/library/json.rst description: 3.2 explain json.dumps for non-string keys in dicts. closes issue6566. Patch contributed Kirubakaran Athmanathan diff -r 32d3ecacdabf -r 613919591a05 Doc/library/json.rst --- a/Doc/library/json.rst Fri Mar 16 22:49:54 2012 -0400 +++ b/Doc/library/json.rst Sat Mar 17 00:40:34 2012 -0700 @@ -168,6 +168,14 @@ so trying to serialize multiple objects with repeated calls to :func:`dump` using the same *fp* will result in an invalid JSON file. + .. note:: + + Keys in key/value pairs of JSON are always of the type :class:`str`. When + a dictionary is converted into JSON, all the keys of the dictionary are + coerced to strings. As a result of this, if a dictionary is convered + into JSON and then back into a dictionary, the dictionary may not equal + the original one. That is, ``loads(dumps(x)) != x`` if x has non-string + keys. .. function:: load(fp, cls=None, object_hook=None, parse_float=None, parse_int=None, parse_constant=None, object_pairs_hook=None, **kw) /senthil@uthcode.com