]> git.ipfire.org Git - thirdparty/Python/cpython.git/commitdiff
Doc: Do not encourage using a base class name in a derived class (GH-22177)
authorMiss Skeleton (bot) <31488909+miss-islington@users.noreply.github.com>
Wed, 21 Oct 2020 08:11:13 +0000 (01:11 -0700)
committerGitHub <noreply@github.com>
Wed, 21 Oct 2020 08:11:13 +0000 (17:11 +0900)
(cherry picked from commit 4642ccd1c3e460cb2746d3f2095f1c1d1bafa4fe)

Co-authored-by: Andre Delfino <adelfino@gmail.com>
Doc/faq/programming.rst

index 106450fb786709ab9b9b0f20dcaf8820d38547f5..1d1155953e12fca8f0bd2dbada6a04cc44afd075 100644 (file)
@@ -1518,18 +1518,18 @@ provide the ``self`` argument.
 How can I organize my code to make it easier to change the base class?
 ----------------------------------------------------------------------
 
-You could define an alias for the base class, assign the real base class to it
-before your class definition, and use the alias throughout your class.  Then all
+You could assign the base class to an alias and derive from the alias.  Then all
 you have to change is the value assigned to the alias.  Incidentally, this trick
 is also handy if you want to decide dynamically (e.g. depending on availability
 of resources) which base class to use.  Example::
 
-   BaseAlias = <real base class>
+   class Base:
+       ...
+
+   BaseAlias = Base
 
    class Derived(BaseAlias):
-       def meth(self):
-           BaseAlias.meth(self)
-           ...
+       ...
 
 
 How do I create static class data and static class methods?