在Python中,判断一个数是否为素数(质数)通常涉及检查该数是否能被除了1和它自己之外的任何数整除。以下是一个简单的Python函数,用于判断给定的整数是否为素数:
import mathdef is_prime(n):0和1不是素数if n <= 1:return False2和3是素数if n <= 3:return True排除能被2或3整除的数if n % 2 == 0 or n % 3 == 0:return False只需检查到sqrt(n)i = 5while i * i <= n:排除能被i或i+2整除的数if n % i == 0 or n % (i + 2) == 0:return Falsei += 6return True
这个函数首先排除了小于等于1的数,然后确认2和3是素数。接着,它检查数是否能被2或3整除。之后,函数通过一个循环从5开始检查,步长为6(即检查5, 11, 17, ... 和7, 13, 19, ...),因为所有素数(除了2和3)都可以表示为6k±1的形式。循环继续直到`i`的平方大于`n`。如果在循环中没有找到能整除`n`的数,那么`n`是素数。

你可以使用这个函数来判断任何大于1的自然数是否为素数。例如:
num = int(input("请输入一个大于1的自然数:"))if is_prime(num):print(f"{num} 是素数")else:print(f"{num} 不是素数")
这段代码会提示用户输入一个数,并使用`is_prime`函数来判断它是否为素数,然后输出相应的结果
