python 3.x - my prime number function keeps a returning a TypeError -



python 3.x - my prime number function keeps a returning a TypeError -

so i'm writing is_prime function, , keeps returning typeerror when set argument float. function returns returns true if num prime. number x prime if divisible 1 , x. can consider numbers 0 , 1 prime , returns false if num not prime. also, if argument not integer or num < 0, function should homecoming none.

so examples:

input argument "hello!", should homecoming none, because input argument string for input argument "23", should homecoming none, because input argument string for input argument 12.34, should homecoming none, because input argument float. for input argument 1, should homecoming true for input argument 4, should homecoming false (number 4 divisible 2)

so here code, don't know problem, help or criticism appreciated...:

def is_prime(num): if num type(num) , type(str) , num < 0: homecoming none in range(1, num): if num % 2 == 0: homecoming false else: homecoming true

based on code, believe algorithm you're going for:

check num beingness integer (should check beingness positive) check each number between 1 & num see if divides num if no number divides num , homecoming true.

with that, function becomes:

def is_prime(num): # returns false if num not integer if not isinstance(num, int): homecoming none # returns false divisible number # between 1 , num homecoming false in range(2, num): if num % == 0: homecoming false # if none of numbers split num homecoming true homecoming true.

python-3.x

Comments

Popular posts from this blog

java - How to set log4j.defaultInitOverride property to false in jboss server 6 -

c - GStreamer 1.0 1.4.5 RTSP Example Server sends 503 Service unavailable -

Using ajax with sonata admin list view pagination -