IsString
Steven Bethard
steven.bethard at gmail.com
Mon Dec 12 19:31:06 EST 2005
Steven D'Aprano wrote:
> Judging by the tone of the original poster's question, I'd say for sure he
> is an utter Python newbie, probably a newbie in programming in general,
> so I bet that what (s)he really wants is something like this:
>
> somefunction("6")
> -> It is a number.
>
> somefunction("x")
> -> It is a character.
>
> So, at the risk of completely underestimating Tuvas' level of programming
> sophistication, I'm going to answer the question I think he meant to ask:
> how do I tell the difference between a digit and a non-digit?
>
> import string
> def isDigit(s):
> if len(s) != 1:
> # a digit must be a single character, anything more
> # or less can't be a digit
> return False
> else:
> return s in string.digits
>
>
> If you know that you are only dealing with a single character c, never a
> longer string, you can just use the test:
>
> c in string.digits
Or better yet, use str.isdigit:
py> '6'.isdigit()
True
py> 'x'.isdigit()
False
py> def is_single_digit(s):
... return len(s) == 1 and s.isdigit()
...
py> is_single_digit('6')
True
py> is_single_digit('66')
False
STeVe
More information about the Python-list
mailing list