【Python每日一练】002:判断素数

1. 问题描述

题目:判断素数

2. 思路分析

这种题目都是数学题目,涉及数学题目都需要看下定义,素数也不例外,我只记得素数就是除了1和本身之外不能被其他数整除的整数,具体还是看看百度百科的解释:

质数是指在大于1的自然数中,除了1和它本身以外不再有其他因数的自然数。

这里需要说明下,自然数就是正整数和0, 根据上面的定义我们可以得出一下结论:

  1. 素数是大于1的自然数
  2. 只能被1和自身整除

这个题目中只能被1和自身整除比较麻烦,这里需要用到for循环去遍历了

还是先画个流程图更容易理解:
在这里插入图片描述

3. 代码实现

def isprime(num: int) -> bool:
	"""
	判断数字是否是素数
	如果是返回True,
	如果不是返回False
	Args :
		num (int): 接收一个整数
	Returns:
		bool: 返回结果,True或False
	"""
	# 初始化结果
	res = False
	#判断num是否是int类型且大于1
	#如果不符合不处理
	if isinstance(num, int) and num > 1:
		# 如果符合条件,进入遍历2~num
		for i in range(2, num):
			# 查看是否有能整除num的整数
			if num % i =0:# 如果有整除num的整数则直接结束循环
				break
		# 如果没有整除num的整数则证明num是素数
		else:
		# 修改res为True
		res = True
	# 返鱿梏结果
	return res

运行结果:
在这里插入图片描述

代码里的注释已经很清楚了,我就简单讲解下for-else循环体的用法,这个是python独有的用法,在其他编程语言我是没有见过的,也可能是我用的编程语言比较少孤陋寡闻了。反正是不是python独创的不清楚,但是确实好用。为了保险起见我还是用伪代码简单说下这个程序的执行过程

初始化 res = False

判断num是否是int类型且大于1
a. 如果符合条件,循环遍历1~num
i. 判断 num % i == 0, 如果有符合条件的整数,跳出循环,直接运行return res
ii. 如果一直到循环结束都没有符合 num % i == 0 的整数 break跳出循环则执行else后面的语句,修改 res = True 结束循环 执行 return res
b. 如果不符合条件直接运行return res

我理解的执行过程就是这样的,下面我重点演示下for-else。这个东西对你们来说不知道惊喜不惊喜,反正我做完这个题感觉是挺惊喜的。如果没有这个else,我可能需要再定义一个标识去记录循环体中是否存在能被num整除的整数。最后还需要判断这个标识。废话不多说,直接上代码演示:
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

通过上面的实例我们可以看出来,for循环执行完总是会执行else语句的,但是有一种情况例外,就是在for循环未执行完直接执行break跳出循环,这时候就不会执行else后面的语句了。意外收获,我之前一直以为是for语句块里面的语句没有执行才会执行else,搞了半天一切的魔法是break这个语句起了作用。


此专栏文章是专门针对 Python 0基础小白所准备的每日一道经典练习题,觉得不错的话,欢迎订阅!

粉丝福利

如果你是0基础,想要学习Python的话,可以试试我整理的这份Python全套学习资料,0基础入门+进阶实战,学完就可以自己在网上帮人写写脚本,接单赚米了~

需要的可以自行扫描下方SCDN官方认证二维码免费领取

资料包括:Python永久使用安装包、Python web开发,Python爬虫,Python数据分析,人工智能、机器学习、大厂面试题、Python练习题、Python实战案例源码等学习教程。带你从零基础到精通!

学习资源推荐

除了上述分享,如果你也喜欢编程,想通过学习Python获取更高薪资,这里给大家分享一份Python学习资料。

这里给大家展示一下我进的兼职群和最近接单的截图

兼职群

私单

😝朋友们如果有需要的话,可以V扫描下方二维码联系领取,也可以内推兼职群哦~

学好 Python 不论是就业还是做副业赚钱都不错,但要学会 Python 还是要有一个学习规划。最后大家分享一份全套的 Python 学习资料,给那些想学习 Python 的小伙伴们一点帮助!

### 1.Python学习路线

image-20230619144606466

python学习路线图1

2.Python基础学习
01.开发工具

02.学习笔记

在这里插入图片描述

03.学习视频

在这里插入图片描述

3.Python小白必备手册

图片

4.数据分析全套资源

在这里插入图片描述

5.Python面试集锦
01.面试资料

在这里插入图片描述

在这里插入图片描述

02.简历模板

在这里插入图片描述

因篇幅有限,仅展示部分资料,添加上方即可获取👆

------ 🙇‍♂️ 本文转自网络,如有侵权,请联系删除 🙇‍♂️ ------

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值