Possible bug with TypeError in Python

Mark C. Allman mcallman at allmanpc.com
Wed Jan 30 13:58:05 UTC 2008


On Wed, 2008-01-30 at 07:40 -0600, Aaron Konstam wrote:
> The following seems like an bug in python in both f7 and f8 but I would
> like input before I post a bugzilla. It seems the exception handler
> cannot trap the TypeError in python.
> For example:
> def plus(a,b):
> 	try:
> 		return(a+b)
> 	except TypeError:
> 		return None
> 
> If we define plus as above and call it with: plus(3,) we should get
> nothing returned. Instead we get:
> Traceback (most recent call last):
>   File "./calculator", line 47, in <module>
>     exec("register=op[tokens[0]](register)")
>   File "<string>", line 1, in <module>
> TypeError: plus() takes exactly 2 arguments (1 given)
> 
> This seems like a bug. An ideas out there?
> --
> =======================================================================
> Please keep your hands off the secretary's reproducing equipment.
> =======================================================================
> Aaron Konstam telephone: (210) 656-0355 e-mail: akonstam at sbcglobal.net
> 
If I remember right, the exception is occurring before the actual call
into "plus()."  Try:     
    plus(3,"My String");
and you should see the TypeError.

-- Mark C. Allman, PMP
-- Allman Professional Consulting, Inc.
-- www.allmanpc.com, 617-947-4263

BusinessMsg -- the secure, managed, J2EE/AJAX Enterprise IM/IC solution







More information about the fedora-list mailing list