py 统计素数问题,求解答

img


K= 2 时,为什么没有执行
if k % j == 0:
return False

因为你传的参是2的话
就变成了range(2,2)
当起始值和终止值一样时,会直接跳过循环。
因此也就会出现k=2时没有执行的情况。

如有帮助,还请帮忙点下采纳!感谢!

如果K=2的话,他就会直接跳过循环,便直接为True.

当k是2的时候,这个for循环就不成立了。所以直接返回了true
毕竟for i in range(start, stop, [step])。这个循环是不会到stop的,所以当start和stop是一个值的时候,for循环就不会起作用了