Exception not captured
Peter Otten
__peter__ at web.de
Tue Jan 11 08:40:14 EST 2005
Miki Tebeka wrote:
> Hello All,
>
> Can someone please explain how is the following code fragment possible?
> (If you're interested I can place the whole project somewhere).
>
> def checkout(dest, log):
> '''Get latest version from SCM
>
> client - SCM client to use
> dest - Destination directory
> '''
> try:
> SCM.checkout(dest, log)
> except SCMError, e:
> raise NightlyError("Checkout")
> except Exception, e:
> import inspect
> file = inspect.getsourcefile(e.__class__)
> line = inspect.getsourcelines(e.__class__)[1]
> print "%s:%d" % (file, line)
> file = inspect.getsourcefile(SCMError)
> line = inspect.getsourcelines(SCMError)[1]
> print "%s:%d" % (file, line)
> print SCMError is e.__class__
> raise SystemExit
>
> I get to the second "except" clause, and the printout is:
> /home/mikit/work/nightly/scm/common.py:3
> /home/mikit/work/nightly/scm/common.py:3
> False
>
> How is this possible?
Some kind of duplicate import, maybe? E.g.:
>>> import sys
>>> import inspect
>>> getsource = inspect.getsource
>>> del sys.modules["inspect"]
>>> import inspect
>>> getsource is inspect.getsource
False
Peter
More information about the Python-list
mailing list