[Python-checkins] bpo-34083: Update dict order in Functional HOWTO (GH-8230)
Miss Islington (bot)
webhook-mailer at python.org
Wed Jul 11 07:21:55 EDT 2018
https://github.com/python/cpython/commit/151820e7a0ebe50b3d4fa64e22623c5470f1c56f
commit: 151820e7a0ebe50b3d4fa64e22623c5470f1c56f
branch: 3.7
author: Miss Islington (bot) <31488909+miss-islington at users.noreply.github.com>
committer: GitHub <noreply at github.com>
date: 2018-07-11T04:21:52-07:00
summary:
bpo-34083: Update dict order in Functional HOWTO (GH-8230)
(cherry picked from commit 5e5bbbec467a1569c914a048a94e7597528f92cf)
Co-authored-by: Stig Johan Berggren <stigjb at gmail.com>
files:
M Doc/howto/functional.rst
diff --git a/Doc/howto/functional.rst b/Doc/howto/functional.rst
index 40601812a77c..47a5bb9cf284 100644
--- a/Doc/howto/functional.rst
+++ b/Doc/howto/functional.rst
@@ -273,23 +273,24 @@ dictionary's keys::
>>> m = {'Jan': 1, 'Feb': 2, 'Mar': 3, 'Apr': 4, 'May': 5, 'Jun': 6,
... 'Jul': 7, 'Aug': 8, 'Sep': 9, 'Oct': 10, 'Nov': 11, 'Dec': 12}
- >>> for key in m: #doctest: +SKIP
+ >>> for key in m:
... print(key, m[key])
- Mar 3
+ Jan 1
Feb 2
- Aug 8
- Sep 9
+ Mar 3
Apr 4
+ May 5
Jun 6
Jul 7
- Jan 1
- May 5
+ Aug 8
+ Sep 9
+ Oct 10
Nov 11
Dec 12
- Oct 10
-Note that the order is essentially random, because it's based on the hash
-ordering of the objects in the dictionary.
+Note that starting with Python 3.7, dictionary iteration order is guaranteed
+to be the same as the insertion order. In earlier versions, the behaviour was
+unspecified and could vary between implementations.
Applying :func:`iter` to a dictionary always loops over the keys, but
dictionaries have methods that return other iterators. If you want to iterate
@@ -301,8 +302,8 @@ The :func:`dict` constructor can accept an iterator that returns a finite stream
of ``(key, value)`` tuples:
>>> L = [('Italy', 'Rome'), ('France', 'Paris'), ('US', 'Washington DC')]
- >>> dict(iter(L)) #doctest: +SKIP
- {'Italy': 'Rome', 'US': 'Washington DC', 'France': 'Paris'}
+ >>> dict(iter(L))
+ {'Italy': 'Rome', 'France': 'Paris', 'US': 'Washington DC'}
Files also support iteration by calling the :meth:`~io.TextIOBase.readline`
method until there are no more lines in the file. This means you can read each
More information about the Python-checkins
mailing list