summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorVictor Stinner <victor.stinner@gmail.com>2015-03-30 13:04:45 (GMT)
committerVictor Stinner <victor.stinner@gmail.com>2015-03-30 13:04:45 (GMT)
commit93692bba3e00dc35b70af9f9185a9299d16e2f22 (patch)
tree6c6fd0cca806971115e1e3a3b01982341645c43e
parent5fdde71cce866ae52f5abd7ee825f0e2fd6fd2f8 (diff)
downloadcpython-93692bba3e00dc35b70af9f9185a9299d16e2f22.zip
cpython-93692bba3e00dc35b70af9f9185a9299d16e2f22.tar.gz
cpython-93692bba3e00dc35b70af9f9185a9299d16e2f22.tar.bz2
What's New in Python 3.5: add pep 461 (bytes%args) and 465 (a@b)
-rw-r--r--Doc/whatsnew/3.5.rst45
1 files changed, 42 insertions, 3 deletions
diff --git a/Doc/whatsnew/3.5.rst b/Doc/whatsnew/3.5.rst
index 868b6b2..d795a11 100644
--- a/Doc/whatsnew/3.5.rst
+++ b/Doc/whatsnew/3.5.rst
@@ -64,12 +64,12 @@ For full details, see the :source:`Misc/NEWS` file.
Summary -- Release highlights
=============================
-.. This section singles out the most important changes in Python 3.3.
+.. This section singles out the most important changes in Python 3.5.
Brevity is key.
New syntax features:
-* None yet.
+* :pep:`465`, a new matrix multiplication operator: ``a @ b``.
New library modules:
@@ -78,7 +78,8 @@ New library modules:
New built-in features:
-* None yet.
+* ``bytes % args``, ``bytearray % args``: :pep:`461` - Adding ``%`` formatting
+ to bytes and bytearray
Implementation improvements:
@@ -114,6 +115,44 @@ Please read on for a comprehensive list of user-facing changes.
PEP written by Carl Meyer
+PEP 461 - Adding % formatting to bytes and bytearray
+----------------------------------------------------
+
+This PEP proposes adding % formatting operations similar to Python 2's ``str``
+type to :class:`bytes` and :class:`bytearray`.
+
+Examples::
+
+ >>> b'Hello %s!' % b'World'
+ b'Hello World!'
+ >>> b'x=%i y=%f' % (1, 2.5)
+ b'x=1 y=2.500000'
+
+Unicode is not allowed for ``%s``, but it is accepted by ``%a`` (equivalent of
+``repr(obj).encode('ascii', 'backslashreplace')``)::
+
+ >>> b'Hello %s!' % 'World'
+ Traceback (most recent call last):
+ File "<stdin>", line 1, in <module>
+ TypeError: %b requires bytes, or an object that implements __bytes__, not 'str'
+ >>> b'price: %a' % '10€'
+ b"price: '10\\u20ac'"
+
+.. seealso::
+
+ :pep:`461` -- Adding % formatting to bytes and bytearray
+
+
+PEP 465 - A dedicated infix operator for matrix multiplication
+--------------------------------------------------------------
+
+This PEP proposes a new binary operator to be used for matrix multiplication,
+called ``@``. (Mnemonic: ``@`` is ``*`` for mATrices.)
+
+.. seealso::
+
+ :pep:`465` -- A dedicated infix operator for matrix multiplication
+
PEP 471 - os.scandir() function -- a better and faster directory iterator
-------------------------------------------------------------------------