Python实现0~100以内所有素数的计算方法

Dylan
Dylan
发布时间:2026-10-13| 3人浏览过
原创

本文详细解析Python中素数的定义与判断方法,通过基础遍历与优化范围两种策略,展示如何高效求出0至100以内的所有素数。文章提供完整Python代码示例,并附带C语言实现参考,帮助开发者理解算法逻辑与性能优化技巧。

质数,亦称素数,是指大于1的自然数中,除了1和它本身以外不再有其他因数的数。反之,若一个大于1的自然数存在除1和自身外的其他因数,则被归类为合数。

一、判断单个数字是否为素数的方法:

基于定义进行判断

def is_prime(num):
  if num <= 1:
    return '%d是一个合数' % num
  for i in range(2, num):
    if not num % i:
      return '%d是一个合数' % num
  else:
    return '%d是一个素数' % num

利用合数的数学性质进行优化

def is_prime(num):
  if num <= 1:
    return '%d是一个合数' % num
  for i in range(2, int(num/2)+1):
    if not num % i:
      return '%d是一个合数' % num
  else:
    return '%d是一个素数' % num

二、求解0至100范围内的所有素数

def all_prime(num):
  lst = []
  if num <= 1:
    return '0 ~ %d以内没有任何素数' % num
  for i in range(2, num+1):
    for j in range(2, int(i/2)+1):
      if not i % j:
        break
    else:
      lst.append(i)
  return lst

补充参考:小编整理的C语言求1至100以内素数的实现方式

具体代码实现如下:

#include <stdio.h>
#include <math.h>
void main()
{
for (int i = 1; i <= 100; ++i)
{
int j = 2;
for (; j<=sqrt(i); ++j)
{
if (i%j == 0)
break;
}
if (j>sqrt(i) && i != 1)
printf("%d ", i);
}
system("pause");
}

总结

上述内容介绍了使用Python获取0至100之间所有素数的方法,希望能为读者提供实际帮助。若有任何疑问,欢迎留言交流,小编将及时回复。同时,感谢大家对本网站的支持!

相关标签:

免责声明:本文内容仅供参考,不代表本站观点。转载或引用请注明出处。

Python 相关产品和应用

全部下载
Selenium

Selenium

4.51.0 · Windows

用于浏览器自动化和 Web 测试的 Python 工具。

scikit-learn

scikit-learn

1.9.1 · Windows

常用 Python 机器学习算法与模型评估工具库。

Black

Black

26.10.1 · Windows

强调一致性的 Python 自动代码格式化工具。

Ruff

Ruff

0.17.1 · macOS

由 Rust 编写的高速 Python 代码检查和格式化工具。

pytest

pytest

9.1.1 · Windows

简洁而强大的 Python 自动化测试框架。

FastAPI

FastAPI

0.146.0 · Windows

高性能 Python API 框架,支持类型提示和自动接口文档。

Flask

Flask

3.1.3 · Windows

轻量灵活的 Python Web 应用框架。

Django

Django

6.1.2 · Windows

成熟的 Python Web 框架,适合构建内容站点和业务系统。

Spyder

Spyder

6.1.7 · Windows

面向科学计算与数据分析的 Python 集成开发环境。

SciPy

SciPy

1.18.1 · Windows

面向科学、工程和技术计算的 Python 算法库。