What does nonlocal
do in Python 3.x?
To close debugging questions where OP needs nonlocal
and doesn't realize it, please use Is it possible to modify variable in python that is in outer, but not global, scope? instead.
Although Python 2 is officially unsupported as of January 1, 2020, if for some reason you are forced to maintain a Python 2.x codebase and need an equivalent to nonlocal
, see nonlocal keyword in Python 2.x.