[Python-checkins] bpo-21196: Clarify name mangling rules in tutorial (GH-5667)

Miss Islington (bot) webhook-mailer at python.org
Fri Oct 19 20:45:10 EDT 2018


https://github.com/python/cpython/commit/b0f7fa1dda61ae7519deed816993ac5d55870958
commit: b0f7fa1dda61ae7519deed816993ac5d55870958
branch: 2.7
author: Miss Islington (bot) <31488909+miss-islington at users.noreply.github.com>
committer: GitHub <noreply at github.com>
date: 2018-10-19T17:45:06-07:00
summary:

bpo-21196: Clarify name mangling rules in tutorial (GH-5667)


Initial patch by Chandan Kumar.
(cherry picked from commit 13ae4d44381a647aadd09b70b24833052659be41)

Co-authored-by: Berker Peksag <berker.peksag at gmail.com>

files:
M Doc/tutorial/classes.rst

diff --git a/Doc/tutorial/classes.rst b/Doc/tutorial/classes.rst
index 1058b77dd59e..9935ccb92725 100644
--- a/Doc/tutorial/classes.rst
+++ b/Doc/tutorial/classes.rst
@@ -651,6 +651,11 @@ breaking intraclass method calls.  For example::
            for item in zip(keys, values):
                self.items_list.append(item)
 
+The above example would work even if ``MappingSubclass`` were to introduce a
+``__update`` identifier since it is replaced with ``_Mapping__update`` in the
+``Mapping`` class  and ``_MappingSubclass__update`` in the ``MappingSubclass``
+class respectively.
+
 Note that the mangling rules are designed mostly to avoid accidents; it still is
 possible to access or modify a variable that is considered private.  This can
 even be useful in special circumstances, such as in the debugger.



More information about the Python-checkins mailing list