SamG schrieb: > On Apr 13, 2:25 pm, [EMAIL PROTECTED] wrote: >> On Apr 13, 5:14 pm, "SamG" <[EMAIL PROTECTED]> wrote: >> >>> import sys >>> try: >>> s=1 >>> if s==1: >>> sys.exit(0) >>> else: >>> sys.exit(1) >>> except SystemExit,s: >>> if (s==0): >>> print s >>> else: >>> print "Hello" >>> How come i always end up getting the "Hello" printed on the screen as >>> logically i should a '0' printed? >> if you put a debug print statement, eg >> >> ... >> except SystemExit,s: >> print "s in exception " , s, type(s) >> if (s==0): >> .... >> >> you will notice 's' is an "instance". so when it reaches the if >> (s==0), which you are comparing with a number, it will fail and then >> hello is printed. > > Then how do we check the value of the s's instance?
By not naming the caught exception like a variable you used beforehand? The character 'e' comes to my mind... Diez -- http://mail.python.org/mailman/listinfo/python-list