[Tutor] Advice for my function, isPrime(n), please
Dick Moores
rdm at rcblue.com
Fri Jul 18 20:25:56 CEST 2008
At 10:03 AM 7/18/2008, Kent Johnson wrote:
>On Fri, Jul 18, 2008 at 11:32 AM, Dick Moores <rdm at rcblue.com> wrote:
> > if x == 0:
> > return False
> > else:
> > return True
>
>Could be just
> return x!=0
I see this works, but it's Greek to me. HOW does it work? And why is
it better than what I had? Is it faster? Or what?
>or
> return not x
>
> > My question is about whether to test for integerhood. Without that test,
> > isPrime(3.7) returns true, and isPrime('44') returns False. I've gone with
> > testing for integerhood, and with returning None when n fails the test.
>
>Better to raise TypeError.
Like this?
if not isinstance(n, (int, long)):
raise TypeError, "n must be an int or a long"
Thanks,
Dick
More information about the Tutor
mailing list