答案:使用is_prime函数判断大于1且无其他因数的数,遍历范围内的每个数并收集质数。

输出质数列表可以用埃拉托斯特尼筛法或简单判断每个数是否为质数。下面是一个简洁实用的方法:遍历一定范围内的数字,对每个数判断是否只能被1和自身整除。
判断一个数是否为质数
质数是大于1且除了1和它本身外没有其他因数的自然数。可以写一个函数来判断:
def is_prime(n): if n生成指定范围内的质数列表
使用上面的函数,结合列表推导式或循环,生成质数列表:
挺不错的jQuery饼状图插件,装载数据也是非常方便的直接输出在table表格中,然后再绘出饼状图展现百分比,鼠标放上去会显示想要比例的数据,还是很不错的,虽然没有Highcharts.js功能那么强,至少饼状图是够用了。
立即学习“Python免费学习笔记(深入)”;
def get_primes(limit): return [n for n in range(2, limit + 1) if is_prime(n)]示例:输出100以内的质数
primes = get_primes(100) print(primes)
使用筛法提高效率(适用于大范围)
如果要找较大范围内的质数,推荐使用埃氏筛法,效率更高:
def sieve_of_eratosthenes(limit): is_prime = [True] * (limit + 1) is_prime[0] = is_prime[1] = False # 0 和 1 不是质数 for i in range(2, int(limit ** 0.5) + 1): if is_prime[i]: for j in range(i * i, limit + 1, i): is_prime[j] = False return [i for i in range(2, limit + 1) if is_prime[i]]示例
primes = sieve_of_eratosthenes(100) print(primes)
两种方法都能正确输出质数列表,小范围用第一种更直观,大范围推荐筛法。基本上就这些。










