📅  最后修改于: 2023-12-03 15:11:40.748000             🧑  作者: Mango
本文将介绍如何在 Python 中生成给定范围内的素数列表。
素数是一个大于 1 的自然数,只有 1 和它本身两个因数的数。
通过判断一个数是否为素数,可以生成素数列表。我们可以通过以下步骤来生成素数列表:
首先,定义一个列表来存储素数。
primes = []
接着,循环从2开始到给定范围内的数,并判断每一个数是否为素数。若该数为素数,则加入素数列表中。
for num in range(2, n+1):
# 判断num是否为素数
for i in range(2, int(num/2)+1):
if (num % i) == 0:
break
else:
primes.append(num)
在上述代码中,我们通过循环从2开始到n(给定范围内的数),判断每一个数是否为素数。如果该数不是素数,则通过break
语句跳出内层循环,否则else
语句会被执行,并将该数加入素数列表中。
完整代码如下:
def generate_prime_numbers(n):
"""
在给定范围内生成素数列表
:param n: 整数型,范围上限
:return: 所有范围内的素数列表
"""
primes = []
for num in range(2, n+1):
# 判断num是否为素数
for i in range(2, int(num/2)+1):
if (num % i) == 0:
break
else:
primes.append(num)
return primes
通过调用该函数,并将参数设置为10,则可以生成 2 到 10 之间的素数列表,即[2, 3, 5, 7]
。
primes = generate_prime_numbers(10)
print(primes)
输出:
[2, 3, 5, 7]
在 Python 中生成给定范围内的素数列表,我们可以通过判断一个数是否为素数来实现。我们定义一个列表来存储素数,并循环从2开始到给定范围内的数,判断每一个数是否为素数。如果该数是素数,则将其加入素数列表中。最终,我们会返回素数列表。这个方法的时间复杂度为 $O(n^2)$。