质数确定函数给出错误的结果

Prime number determination function gives wrong results

我正在使用 Python 创建一个函数来确定一个数是否为素数。我相信我做对了,但它在一些测试用例上失败了。例如,对于 10,它声称它是质数,但实际上不是。有什么建议吗?

def prime(number):
    result = None

    for i in range(2, number):
        if (number % i == 0):
            result = False

    result = True

    return result

在这部分代码中:

result = True

return result

您将 result 设置为 True 并立即 return 它。因此,在此之前发生的任何事情都没有任何影响,至少没有达到 return 值。这就是为什么您的函数将为每个数字 return True

你至少应该移动或删除 result = True 行,但我留给你看看你这样做时会发生什么。