isFloat: Without Exception-Handling
Mark McEahern
marklists at mceahern.com
Fri Sep 20 09:50:15 EDT 2002
[Thomas Guettler]
> Is there a way to write the following method without using exceptions?
Please help me understand your aversion to the original code you posted.
IMHO, it has several salient characteristics:
1. It works.
2. It works.
3. It works.
Did I forget to mention:
It works.
Anyway, I'd modify your original function slightly to use True/False
(builtin as of 2.2.1) and to be explicit about which errors we're ignoring:
def isFloat(s):
is_float = True
try:
float(s)
except (ValueError, TypeError), e:
is_float = False
return is_float
assert isFloat(1.2)
assert isFloat(1)
assert not isFloat(4+0j)
assert not isFloat("banana")
assert not isFloat(isFloat)
assert not isFloat(__import__)
...etc...
<wink>
Cheers,
// m
-
More information about the Python-list
mailing list