在Python中,获取质数可以通过以下几种方法:
使用`is_prime`函数
def is_prime(num):if num < 2:return Falsefor i in range(2, int(num0.5) + 1):if num % i == 0:return Falsereturn Truedef get_primes(n):primes = []for i in range(2, n):if is_prime(i):primes.append(i)return primesn = 100primes = get_primes(n)print(primes)
使用嵌套循环
prime_num = []for num in range(2, 101):for i in range(2, num):if num % i == 0:breakelse:prime_num.append(num)print(prime_num)
使用`filter`函数
def is_prime(num):if num < 2:return Falsefor i in range(2, int(num0.5) + 1):if num % i == 0:return Falsereturn Truedef get_primes(n):return list(filter(is_prime, range(2, n + 1)))n = 100primes = get_primes(n)print(primes)
使用`math.sqrt`优化
import mathdef get_primes(n):primes = []for num in range(2, n + 1):if is_prime(num):primes.append(num)return primesdef is_prime(num):if num < 2:return Falsefor i in range(2, int(math.sqrt(num)) + 1):if num % i == 0:return Falsereturn Truen = 100primes = get_primes(n)print(primes)

