Is this possible: scoping question with exec
Bengt Richter
bokr at accessone.com
Thu Aug 23 17:20:35 EDT 2001
On Thu, 23 Aug 2001 15:34:12 -0500, Brian Kelley <bkelley at wi.mit.edu> wrote:
>Running Python 2.1
>
>def a():
> return b
>
>exec "a()" in {'b':1, 'a':a}
>
>b doesn't seem to passed as a global into the function a.
>
This seems possible:
>>> exec """def a():
... print 'from a()'
... return b
... print a()
... """ in {'b':1, 'a':a}
from a()
1
I'd guess the dictionary for globals used by the function is
determined by the context of the execution of the def?
More information about the Python-list
mailing list