[Python-checkins] cpython (3.2): 3.2 explain json.dumps for non-string keys in dicts. closes issue6566. Patch

senthil.kumaran python-checkins at python.org
Sat Mar 17 08:41:26 CET 2012


http://hg.python.org/cpython/rev/613919591a05
changeset:   75778:613919591a05
branch:      3.2
parent:      75771:32d3ecacdabf
user:        Senthil Kumaran <senthil at uthcode.com>
date:        Sat Mar 17 00:40:34 2012 -0700
summary:
  3.2 explain json.dumps for non-string keys in dicts. closes issue6566. Patch contributed Kirubakaran Athmanathan

files:
  Doc/library/json.rst |  8 ++++++++
  1 files changed, 8 insertions(+), 0 deletions(-)


diff --git a/Doc/library/json.rst b/Doc/library/json.rst
--- a/Doc/library/json.rst
+++ b/Doc/library/json.rst
@@ -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)
 

-- 
Repository URL: http://hg.python.org/cpython


More information about the Python-checkins mailing list