else与for一块使用,不与if一块使用

问题描述:最近做计算机二级,看了一个找出两个整数之间的所有素数。

完整问题如下:键盘输入两个大于0的整数,按要求输出这两个整数之间(不包括这两个整数)的所有素数。素数又称质数,是指除了1和它本身以外不能被其他整数整除的数。

准确答案代码是:

复制代码
lower=int(input("请输入区间最小值:"))
upper =int(input("请输入区间最大值:"))
for num in range(lower+1,upper):
    if num>1:
        for i in (2,num):
            if (num%2) == 0:
                break
        else:
            print(num)

我们会发现里面的else并没有和if对齐,这是因为这里else是配合for、break一块使用的。

在 Python 中,else 语句可以与 for 循环一起使用,它会在for循环正常完成(即不被 break 中断)时执行。如果break一旦使用,break跳出最里面的循环,并且break后面的else也不会被执行。

类似用法还有在列表中寻找某一元素

代码如下:

复制代码
# 列表中的数据
my_list = [1, 2, 3, 4, 5]

# 要查找的目标元素
target = 3

# 使用 for 循环查找目标元素
for item in my_list:
    if item == target:
        print(f"找到了目标元素 {target}")
        break
else:
    print(f"未找到目标元素 {target}")
相关推荐
不会代码的小猴6 小时前
3. 控件学习1
开发语言·c++·笔记·qt·算法
fangzhanpeng1686 小时前
(前端)2.js变量作用域样例
开发语言·前端·javascript
雪碧聊技术6 小时前
安装Python(保姆级教程)
python·版本更新·python下载
张龙6878 小时前
uv 全面指南:比 pip 快 100 倍的 Python 包管理器,从安装到团队落地
后端·python
mqiqe8 小时前
线程调度与 Schedulers:Project Reactor 并发模型的核心引擎
java·开发语言·网络
@HNUSTer9 小时前
Python数据可视化科技图表绘制系列教程(八)
python·数据可视化·科技论文·专业制图·科研图表
专注仿真10 小时前
问答大模型技术方案算法实现-熵权法融合算法 + 交叉编码器重排算法
人工智能·python·算法·语言模型·问答大模型关键算法·熵权融合算法·交叉编码器重排算法
xixiaoyunya10 小时前
JavaScript 异步编程全解析:从回调地狱到 async/await 的演进之路
开发语言·javascript·ecmascript
精英的英10 小时前
记一次 Qt5 Language Server 开发
开发语言·vscode·qt
烧酒同学10 小时前
【C++】记录size of std::vector的巧妙坑
开发语言·c++·图形渲染