checking if a string contains a number
Steven D'Aprano
steve at REMOVETHIScyber.com.au
Tue Dec 20 16:37:41 EST 2005
On Tue, 20 Dec 2005 19:16:46 +0530, Suresh Jeevanandam wrote:
> Hi,
> I have a string like,
> s1 = '12e3'
> s2 = 'junk'
>
> Now before converting these values to float, I want to check if they
> are valid numbers.
Just try converting them:
float_list = []
for s in string_list:
try:
float_list.append(float(s))
except ValueError:
# ignore bad strings
pass
do_something_with_floats(float_list)
> s1.isdigit returns False.
"2" is a digit. "23" is two digits. You want something like s1.isfloat(),
but why bother checking first? Just Do It.
> Is there any other function which would return True for s1 and False
> for s2.
>From an interactive interpreter, call dir(s1). That will give you a list
of string methods. Then call help(s1.method) to learn what that method
does.
--
Steven.
More information about the Python-list
mailing list