diff options
author | Georg Brandl <georg@python.org> | 2010-10-15 17:03:02 (GMT) |
---|---|---|
committer | Georg Brandl <georg@python.org> | 2010-10-15 17:03:02 (GMT) |
commit | d4460aaacdae40505a4645a73c021bfc810c9cb3 (patch) | |
tree | fbbeb729281e3db6bd5f013ceb6adf82cfd8339c /Lib/json/decoder.py | |
parent | b67878a522a1686032d8ed4827438ede36068fe4 (diff) | |
download | cpython-d4460aaacdae40505a4645a73c021bfc810c9cb3.zip cpython-d4460aaacdae40505a4645a73c021bfc810c9cb3.tar.gz cpython-d4460aaacdae40505a4645a73c021bfc810c9cb3.tar.bz2 |
#4785: document strict argument of JSONDecoder, plus add object_pairs_hook in the docstrings.
Diffstat (limited to 'Lib/json/decoder.py')
-rw-r--r-- | Lib/json/decoder.py | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/Lib/json/decoder.py b/Lib/json/decoder.py index 6596154..5747fa6 100644 --- a/Lib/json/decoder.py +++ b/Lib/json/decoder.py @@ -294,6 +294,15 @@ class JSONDecoder(object): place of the given ``dict``. This can be used to provide custom deserializations (e.g. to support JSON-RPC class hinting). + ``object_pairs_hook``, if specified will be called with the result of + every JSON object decoded with an ordered list of pairs. The return + value of ``object_pairs_hook`` will be used instead of the ``dict``. + This feature can be used to implement custom decoders that rely on the + order that the key and value pairs are decoded (for example, + collections.OrderedDict will remember the order of insertion). If + ``object_hook`` is also defined, the ``object_pairs_hook`` takes + priority. + ``parse_float``, if specified, will be called with the string of every JSON float to be decoded. By default this is equivalent to float(num_str). This can be used to use another datatype or parser @@ -309,6 +318,11 @@ class JSONDecoder(object): This can be used to raise an exception if invalid JSON numbers are encountered. + If ``strict`` is false (true is the default), then control + characters will be allowed inside strings. Control characters in + this context are those with character codes in the 0-31 range, + including ``'\\t'`` (tab), ``'\\n'``, ``'\\r'`` and ``'\\0'``. + """ self.object_hook = object_hook self.parse_float = parse_float or float |