[Python-checkins] bpo-38255: super() can search attributes as well as methods (GH-16368) (GH-16392)

Raymond Hettinger webhook-mailer at python.org
Wed Sep 25 11:24:28 EDT 2019


https://github.com/python/cpython/commit/3b5e9241142d6b7c22059115c0e68a8912753818
commit: 3b5e9241142d6b7c22059115c0e68a8912753818
branch: 3.7
author: Miss Islington (bot) <31488909+miss-islington at users.noreply.github.com>
committer: Raymond Hettinger <rhettinger at users.noreply.github.com>
date: 2019-09-25T08:24:24-07:00
summary:

bpo-38255: super() can search attributes as well as methods (GH-16368) (GH-16392)

Improvement suggested by Géry Ogam.
(cherry picked from commit 15ccc4fac09b866d61b069c6c136aabfe4bac09c)

Co-authored-by: Raymond Hettinger <rhettinger at users.noreply.github.com>

files:
M Doc/library/functions.rst

diff --git a/Doc/library/functions.rst b/Doc/library/functions.rst
index 313dbffdcde9..06ba323ca30c 100644
--- a/Doc/library/functions.rst
+++ b/Doc/library/functions.rst
@@ -1532,6 +1532,10 @@ are always available.  They are listed here in alphabetical order.
               super().method(arg)    # This does the same thing as:
                                      # super(C, self).method(arg)
 
+   In addition to method lookups, :func:`super` also works for attribute
+   lookups.  One possible use case for this is calling :term:`descriptor`\s
+   in a parent or sibling class.
+
    Note that :func:`super` is implemented as part of the binding process for
    explicit dotted attribute lookups such as ``super().__getitem__(name)``.
    It does so by implementing its own :meth:`__getattribute__` method for searching



More information about the Python-checkins mailing list