]> git.ipfire.org Git - thirdparty/Python/cpython.git/commitdiff
bpo-39431: Also mention nonlocal in assignment quirk (GH-17375)
authorShanavas M <shanavas.m2@gmail.com>
Thu, 23 Jan 2020 18:09:21 +0000 (23:39 +0530)
committerTerry Jan Reedy <tjreedy@udel.edu>
Thu, 23 Jan 2020 18:09:21 +0000 (13:09 -0500)
Doc/tutorial/classes.rst

index 0c0dca99f21f286fe600392378d7121b0c917423..f781fecf832f080d1efe4c39d7501b5ce49aeab7 100644 (file)
@@ -143,10 +143,10 @@ language definition is evolving towards static name resolution, at "compile"
 time, so don't rely on dynamic name resolution!  (In fact, local variables are
 already determined statically.)
 
-A special quirk of Python is that -- if no :keyword:`global` statement is in
-effect -- assignments to names always go into the innermost scope.  Assignments
-do not copy data --- they just bind names to objects.  The same is true for
-deletions: the statement ``del x`` removes the binding of ``x`` from the
+A special quirk of Python is that -- if no :keyword:`global` or :keyword:`nonlocal`
+statement is in effect -- assignments to names always go into the innermost scope.
+Assignments do not copy data --- they just bind names to objects.  The same is true
+for deletions: the statement ``del x`` removes the binding of ``x`` from the
 namespace referenced by the local scope.  In fact, all operations that introduce
 new names use the local scope: in particular, :keyword:`import` statements and
 function definitions bind the module or function name in the local scope.