Replacement for keyword 'global' good idea? (e.g. 'modulescope' or 'module' better?)
Antoon Pardon
apardon at forel.vub.ac.be
Tue Aug 16 05:54:53 EDT 2005
Op 2005-08-06, Peter Hansen schreef <peter at engcorp.com>:
> Paolino wrote:
>> seberino at spawar.navy.mil wrote:
>> def enclosing():
>> var=[]
>> var[0]=2
>> def enclosed():
>> var[0]=4
>> which is like saying python is not working
>>
>> It's ok to mark non locals,but why var=4 is not searched outside and
>> var[0]=4 yes?
>
> Because "var=4" rebinds the name "var", while "var[0]=4" does not. It's
> exactly the same issue with using "global", where you don't need it if
> you aren't rebinding the name.
This doesn't answer the question at the appropiate level IMO.
Why has one made a difference in search policy for finding a
variable based on whether the variable is rebound or not
in the first place.
--
Antoon Pardon
More information about the Python-list
mailing list