Python 3.0 nonlocal statement
mccredie at gmail.com
Tue Jan 6 17:10:13 CET 2009
On Jan 6, 5:31 am, Casey <Casey... at gmail.com> wrote:
> In PEP 3104 the nonlocal statement was proposed and accepted for
> implementation in Python 3.0 for access to names in outer scopes. The
> proposed syntax included an optional assignment or augmented
> assignment to the outer name, such as:
> nonlocal x += 1
> This syntax doesn't appear to be supported in the 3.0 implementation.
> My question is: was this intentional or was it missed in the initial
> release? If it was intentional, is there any plan to support it in a
> later 3.x release? I realize it is a very small convenience feature
> but I have already come across a couple of cases where I use nested
> functions where it does make the code seem a little cleaner.
> Regards, Casey
`nonlocal` should behave just like `global` does. It doesn't support
that syntax either. So, yes it was intentional. No, there probably is
no plan to support it in a later release.
More information about the Python-list