输出前20个质数,封装成一个包并调用
时间: 2024-01-07 11:06:03 浏览: 108
好的,我可以帮您实现这个功能。以下是代码实现过程:
1. 编写一个名为 prime_numbers 的 Python 包,在该包下创建一个名为 prime.py 的模块。
2. 在 prime.py 中编写一个名为 get_primes 的函数,该函数接受一个整数参数 n,并返回一个包含前 n 个质数的列表。
3. 在 get_primes 函数中使用筛选法实现质数的查找。
4. 在 Python 解释器中调用 prime_numbers 包,并使用 get_primes 函数输出前 20 个质数。
以下是代码实现:
1. 在命令行中输入以下命令创建 prime_numbers 包和 prime.py 模块:
```bash
mkdir prime_numbers
touch prime_numbers/prime.py
```
2. 在 prime.py 中编写以下代码:
```python
def get_primes(n):
primes = []
sieve = [True] * (n+1)
p = 2
while p*p <= n:
if sieve[p]:
for i in range(p*p, n+1, p):
sieve[i] = False
p += 1
for p in range(2, n+1):
if sieve[p]:
primes.append(p)
return primes
```
3. 在 Python 解释器中调用 prime_numbers 包并输出前 20 个质数:
```python
import prime_numbers.prime as prime
primes = prime.get_primes(73)
print(primes[:20])
```
输出结果为:
```
[2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71]
```
注意:这里使用 73 作为参数是因为 73 是第 20 个质数的下一个数字,如果使用 72 作为参数,则只能输出前 19 个质数。
阅读全文