怎么用python输出素数
时间: 2023-09-24 21:06:24 浏览: 65
以下是一个输出素数的Python程序:
```python
def is_prime(n):
if n < 2:
return False
for i in range(2, int(n**0.5) + 1):
if n % i == 0:
return False
return True
def print_primes(n):
primes = [2]
for i in range(3, n + 1, 2):
if is_prime(i):
primes.append(i)
print(primes)
print_primes(100)
```
这个程序定义了两个函数:`is_prime`和`print_primes`。`is_prime`函数用于判断一个数是否是素数,`print_primes`函数则用于打印从2到n之间的所有素数。
在`print_primes`函数中,我们首先将2添加到`primes`列表中,然后从3到n中每隔2个数进行遍历。对于每个数i,我们调用`is_prime`函数来判断它是否是素数,如果是,则将它添加到`primes`列表中。最后,我们输出`primes`列表,其中包含了所有素数。
在上面的代码中,我们使用了一个常见的优化技巧:如果一个数n不是素数,则它的因子至少有一个小于等于n的平方根。因此,在`is_prime`函数中,我们只需要测试2到n的平方根之间的数是否是n的因子即可。这样可以减少循环次数,提高程序效率。
阅读全文