This question already has answers here:
Program that checks if a number is prime number
(5个答案)
去年关闭。
我不太明白
和
那么,为什么我没有得到
(5个答案)
去年关闭。
def is_prime(x):
if x < 2:
return False
else:
for n in range(2, x):
if x % n == 0:
return False
else:
return True
print is_prime(9)
返回True
而不是False
。我不太明白
range (2,9)
包括以下列表:2,3,4,5,6,7,8
和
9 % 3 == 0
,那么,为什么我没有得到
False
作为该函数的答案呢? 最佳答案
这是因为您实际上没有循环,因为在第一个周期中返回True(9%2 == 0为False)。
这样的事情应该可以解决问题:
def is_prime(x):
if x < 2:
return False
for n in range(2, x):
if x % n == 0:
return False
return True
10-06 06:10