From e3d73544ad74eeb72e3e51794329b6bfa683ac55 Mon Sep 17 00:00:00 2001 From: Senthil Kumaran Date: Sat, 17 Mar 2012 00:37:38 -0700 Subject: explain json.dumps for non-string keys in dicts. closes issue6566. Patch contributed Kirubakaran Athmanathan --- Doc/library/json.rst | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/Doc/library/json.rst b/Doc/library/json.rst index 546a09d..6d4497f 100644 --- a/Doc/library/json.rst +++ b/Doc/library/json.rst @@ -170,6 +170,14 @@ Basic Usage :class:`unicode` instance. The other arguments have the same meaning as in :func:`dump`. + .. 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[, encoding[, cls[, object_hook[, parse_float[, parse_int[, parse_constant[, object_pairs_hook[, **kw]]]]]]]]) -- cgit v0.12