bpo-30550: Clarify JSON ordering guarantees (GH-15397) (GH-15403)

(cherry picked from commit 657008ea03)

Co-authored-by: Raymond Hettinger <rhettinger@users.noreply.github.com>
This commit is contained in:
Miss Islington (bot) 2019-08-22 15:50:32 -07:00 committed by Raymond Hettinger
parent 5fda09cc1e
commit 4a40498ea9
1 changed files with 12 additions and 0 deletions

View File

@ -120,6 +120,18 @@ See :ref:`json-commandline` for detailed documentation.
value) is also a subset of YAML 1.0 and 1.1. This module can thus also be
used as a YAML serializer.
.. note::
This module's encoders and decoders preserve input and output order by
default. Order is only lost if the underlying containers are unordered.
Prior to Python 3.7, :class:`dict` was not guaranteed to be ordered, so
inputs and outputs were typically scrambled unless
:class:`collections.OrderedDict` was specifically requested. Starting
with Python 3.7, the regular :class:`dict` became order preserving, so
it is no longer necessary specify :class:`collections.OrderedDict` for
JSON generation and parsing.
Basic Usage
-----------