summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Doc/library/json.rst12
-rw-r--r--Lib/json/__init__.py17
-rw-r--r--Lib/json/decoder.py7
3 files changed, 11 insertions, 25 deletions
diff --git a/Doc/library/json.rst b/Doc/library/json.rst
index 829218d..bcad61a 100644
--- a/Doc/library/json.rst
+++ b/Doc/library/json.rst
@@ -230,10 +230,8 @@ Basic Usage
*object_pairs_hook* is an optional function that will be called with the
result of any object literal decoded with an ordered list of pairs. The
return value of *object_pairs_hook* will be used instead of the
- :class:`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,
- :func:`collections.OrderedDict` will remember the order of insertion). If
- *object_hook* is also defined, the *object_pairs_hook* takes priority.
+ :class:`dict`. This feature can be used to implement custom decoders.
+ If *object_hook* is also defined, the *object_pairs_hook* takes priority.
.. versionchanged:: 3.1
Added support for *object_pairs_hook*.
@@ -325,10 +323,8 @@ Encoders and Decoders
*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 :class:`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,
- :func:`collections.OrderedDict` will remember the order of insertion). If
- *object_hook* is also defined, the *object_pairs_hook* takes priority.
+ feature can be used to implement custom decoders. If *object_hook* is also
+ defined, the *object_pairs_hook* takes priority.
.. versionchanged:: 3.1
Added support for *object_pairs_hook*.
diff --git a/Lib/json/__init__.py b/Lib/json/__init__.py
index a566009..3bb4490 100644
--- a/Lib/json/__init__.py
+++ b/Lib/json/__init__.py
@@ -28,8 +28,7 @@ Encoding basic Python object hierarchies::
Compact encoding::
>>> import json
- >>> from collections import OrderedDict
- >>> mydict = OrderedDict([('4', 5), ('6', 7)])
+ >>> mydict = {'4': 5, '6': 7}
>>> json.dumps([1,2,3,mydict], separators=(',', ':'))
'[1,2,3,{"4":5,"6":7}]'
@@ -285,14 +284,11 @@ def load(fp, *, cls=None, object_hook=None, parse_float=None,
``object_pairs_hook`` is an optional function that will be called with the
result of any object literal 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.
+ This feature can be used to implement custom decoders. If ``object_hook``
+ is also defined, the ``object_pairs_hook`` takes priority.
To use a custom ``JSONDecoder`` subclass, specify it with the ``cls``
kwarg; otherwise ``JSONDecoder`` is used.
-
"""
return loads(fp.read(),
cls=cls, object_hook=object_hook,
@@ -313,10 +309,8 @@ def loads(s, *, encoding=None, cls=None, object_hook=None, parse_float=None,
``object_pairs_hook`` is an optional function that will be called with the
result of any object literal 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.
+ This feature can be used to implement custom decoders. 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
@@ -337,7 +331,6 @@ def loads(s, *, encoding=None, cls=None, object_hook=None, parse_float=None,
kwarg; otherwise ``JSONDecoder`` is used.
The ``encoding`` argument is ignored and deprecated.
-
"""
if isinstance(s, str):
if s.startswith('\ufeff'):
diff --git a/Lib/json/decoder.py b/Lib/json/decoder.py
index 3741dee..d7d8244 100644
--- a/Lib/json/decoder.py
+++ b/Lib/json/decoder.py
@@ -292,10 +292,8 @@ class JSONDecoder(object):
``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
+ This feature can be used to implement custom decoders.
+ If ``object_hook`` is also defined, the ``object_pairs_hook`` takes
priority.
``parse_float``, if specified, will be called with the string
@@ -317,7 +315,6 @@ class JSONDecoder(object):
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