Possible bug with TypeError in Python
Cameron Simpson
cs at zip.com.au
Wed Jan 30 20:16:06 UTC 2008
On 30Jan2008 07:40, Aaron Konstam <akonstam at sbcglobal.net> 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?
The 'b' argument to plus() is not optional. This isn't Perl. plus()
is not being called, and your try/except is not being reached.
Not a bug.
--
Cameron Simpson <cs at zip.com.au> DoD#743
http://www.cskk.ezoshosting.com/cs/
Just because Unix is a multiuser system doesn't mean I want to share it with
anybody! - Paul Tomblin, in rec.aviation.military
More information about the fedora-list
mailing list