is it a bug in exec?
Steven D'Aprano
steve+comp.lang.python at pearwood.info
Fri Jan 21 03:14:52 EST 2011
On Thu, 20 Jan 2011 20:52:15 -0800, longqian9509 at gmail.com wrote:
> In pyhton 3.1, I found the following code will succeed with argument 1
> to 4 and fail with argument 5 to 9. It is really strange to me. I
> suspect it may be a buy in exec() function. Does anyone have some idea
> about it? Thanks.
What makes you think it's a bug? Is there anything in the documentation
of exec that suggests to you that some other behaviour should occur? What
version of Python are you using?
Without knowing what behaviour you expect and what behaviour you see, how
are we supposed to know if you've found a bug or not?
I suggest you fire up the interactive interpreter and try this:
t1 = """
class foo:
def fun():
print('foo')
def main():
global foo
foo.fun()
main()
"""
dg = {}
dl = {}
exec(t1, dg, dl)
then inspect the values of dg and dl and see if it helps. If not, write
back with what you expect to happen, and what you see instead.
--
Steven
More information about the Python-list
mailing list