Daniel Stutzbach wrote:
> On Fri, Feb 20, 2009 at 5:27 PM, Nick Coghlan <ncogh...@gmail.com
> <mailto:ncogh...@gmail.com>> wrote:
> 
>     Brett Cannon wrote:
>     > If you import pickle and call pickle.A() you will get -13 which is not
>     > what you are after.
> 
>     Ah, you may want to think about that a bit more. There's a reason
>     globals are looked up when they're used rather than when their function
>     is defined. Even in your own example, _B isn't defined at all when you
>     define A.
> 
> 
> No, I'm afraid Brett is quite right.  Globals are looked up when the
> function is executed, true, but they are looked up within the module
> that defined the function.  Functions defined in _pypickle would only
> call the _pypickle version of functions.

Oh, I see what you mean now. Looks like Brett's tracked substitution may
be the way to go then.

Cheers,
Nick.

-- 
Nick Coghlan   |   ncogh...@gmail.com   |   Brisbane, Australia
---------------------------------------------------------------
_______________________________________________
Python-Dev mailing list
Python-Dev@python.org
http://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: 
http://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com

Reply via email to