python中定义函数判断是否为素数

  • Post category:Python

当我们需要判断一个数是否为素数时,可以定义一个函数来解决问题。下面是Python定义函数判断素数的完整攻略:

步骤1:定义函数

首先我们要定义一个函数,函数名为is_prime(),用于判断输入的整数是否为素数。函数的参数为n,代表需要判断的整数。

def is_prime(n):
    # 在此处编写函数体

步骤2:判断是否为负数或小于2的整数

一个质数是指只能被1和它本身整除的正整数,所以当输入的整数小于2时,直接返回False。

def is_prime(n):
    # 判断是否为负数或小于2的整数
    if n < 2:
        return False

步骤3:判断是否为偶数

2是最小的质数,并且除了2之外,所有的偶数都不可能是质数。因此,如果输入的整数为偶数,则直接返回False。

def is_prime(n):
    # 判断是否为负数或小于2的整数
    if n < 2:
        return False
    # 判断是否为偶数
    if n % 2 == 0:
        return False

步骤4:判断是否为素数

判断输入的整数是否为素数时,只需要判断它是否能被2到(n-1)的正整数整除即可,其中的(n-1)表示的是次数,也可以写成(n//2)。如果能除尽,则表示不是素数,直接返回False;如果不能除尽,则继续循环,直至判断完毕,最后返回True。

def is_prime(n):
    # 判断是否为负数或小于2的整数
    if n < 2:
        return False
    # 判断是否为偶数
    if n % 2 == 0:
        return False
    # 判断是否为素数
    for i in range(3, int(n**0.5)+1, 2):
        if n % i == 0:
            return False
    return True

步骤5:完整代码

将以上4个步骤整合起来,形成完整代码:

def is_prime(n):
    # 判断是否为负数或小于2的整数
    if n < 2:
        return False
    # 判断是否为偶数
    if n % 2 == 0:
        return False
    # 判断是否为素数
    for i in range(3, int(n**0.5)+1, 2):
        if n % i == 0:
            return False
    return True

步骤6:测试函数

最后,我们来测试一下这个函数。比如,我们需要判断27是否为素数,只需要调用一下is_prime()函数并传入27作为参数,即可输出判断结果。代码如下:

print(is_prime(27))  # False

再比如,我们需要判断37是否为素数:

print(is_prime(37))  # True

这样,我们就可以通过定义is_prime()函数来简单方便地判断一个数是否为素数了。