[Python-checkins] cpython (3.5): whatsnew/3.5: Mention PEP 448

yury.selivanov python-checkins at python.org
Tue Aug 4 18:42:51 CEST 2015


https://hg.python.org/cpython/rev/731b8caaa855
changeset:   97238:731b8caaa855
branch:      3.5
parent:      97236:6fd69aeb8a3b
user:        Yury Selivanov <yselivanov at sprymix.com>
date:        Tue Aug 04 12:42:20 2015 -0400
summary:
  whatsnew/3.5: Mention PEP 448

files:
  Doc/whatsnew/3.5.rst |  43 ++++++++++++++++++++++++++++++++
  1 files changed, 43 insertions(+), 0 deletions(-)


diff --git a/Doc/whatsnew/3.5.rst b/Doc/whatsnew/3.5.rst
--- a/Doc/whatsnew/3.5.rst
+++ b/Doc/whatsnew/3.5.rst
@@ -203,6 +203,49 @@
    :pep:`465` -- A dedicated infix operator for matrix multiplication
 
 
+PEP 448 - Additional Unpacking Generalizations
+----------------------------------------------
+
+This PEP proposes extended usages of the ``*`` iterable unpacking
+operator and ``**`` dictionary unpacking operators
+to allow unpacking in more positions, an arbitrary number of
+times, and in additional circumstances.  Specifically,
+in function calls, in comprehensions and generator expressions, and
+in displays.
+
+Function calls are proposed to support an arbitrary number of
+unpackings rather than just one::
+
+    >>> print(*[1], *[2], 3)
+    1 2 3
+    >>> dict(**{'x': 1}, y=2, **{'z': 3})
+    {'x': 1, 'y': 2, 'z': 3}
+
+Unpacking is proposed to be allowed inside tuple, list, set,
+and dictionary displays::
+
+    >>> *range(4), 4
+    (0, 1, 2, 3, 4)
+    >>> [*range(4), 4]
+    [0, 1, 2, 3, 4]
+    >>> {*range(4), 4}
+    {0, 1, 2, 3, 4}
+    >>> {'x': 1, **{'y': 2}}
+    {'x': 1, 'y': 2}
+
+In dictionaries, later values will always override earlier ones::
+
+    >>> {'x': 1, **{'x': 2}}
+    {'x': 2}
+
+    >>> {**{'x': 2}, 'x': 1}
+    {'x': 1}
+
+.. seealso::
+
+   :pep:`448` -- Additional Unpacking Generalizations
+
+
 PEP 471 - os.scandir() function -- a better and faster directory iterator
 -------------------------------------------------------------------------
 

-- 
Repository URL: https://hg.python.org/cpython


More information about the Python-checkins mailing list