[Python-checkins] bpo-35224: Add What's new entry for evaluation order in dict comprehensions (GH-14319)

Miss Islington (bot) webhook-mailer at python.org
Mon Jun 24 21:49:11 EDT 2019


https://github.com/python/cpython/commit/ced9e11931a7a1c5cf4eef08d0dd4a4886723b43
commit: ced9e11931a7a1c5cf4eef08d0dd4a4886723b43
branch: 3.8
author: Miss Islington (bot) <31488909+miss-islington at users.noreply.github.com>
committer: GitHub <noreply at github.com>
date: 2019-06-24T18:49:07-07:00
summary:

bpo-35224: Add What's new entry for evaluation order in dict comprehensions (GH-14319)

(cherry picked from commit b51b7137faa22e12c570c70fe0462c662ccd935e)

Co-authored-by: Pablo Galindo <Pablogsal at gmail.com>

files:
M Doc/whatsnew/3.8.rst

diff --git a/Doc/whatsnew/3.8.rst b/Doc/whatsnew/3.8.rst
index 5ec3b4f46374..59a65bfb8f14 100644
--- a/Doc/whatsnew/3.8.rst
+++ b/Doc/whatsnew/3.8.rst
@@ -349,6 +349,9 @@ Other Language Changes
   is ``-1``, and a suitable power of that inverse for other negative exponents.
   (Contributed by Mark Dickinson in :issue:`36027`.)
 
+* When dictionary comprehensions are evaluated, the key is now evaluated before
+  the value, as proposed by :pep:`572`.
+
 
 New Modules
 ===========
@@ -1499,6 +1502,11 @@ CPython bytecode changes
   when awaiting a next item in an :keyword:`async for` loop.
   (Contributed by Serhiy Storchaka in :issue:`33041`.)
 
+* The :opcode:`MAP_ADD` now expects the value as the first element in the
+  stack and the key as the second element. This change was made so the key
+  is always evaluated before the value in dictionary comprehensions, as
+  porposed by :pep:`572`. (Contributed by Jörn Heissler in :issue:`35224`.)
+
 
 Demos and Tools
 ---------------



More information about the Python-checkins mailing list