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}")
相关推荐
xyq2024几秒前
过滤器模式
开发语言
freejackman3 分钟前
Java从0到1---基础篇
java·开发语言·后端·idea
MediaTea8 分钟前
Pandas 操作指南(二):数据选取与条件筛选
人工智能·python·机器学习·数据挖掘·pandas
2301_771717219 分钟前
Java自定义注解创建详解
java·开发语言
小陈工13 分钟前
Python Web开发入门(十二):使用Flask-RESTful构建API——让后端开发更优雅
开发语言·前端·python·安全·oracle·flask·restful
艾莉丝努力练剑15 分钟前
【Linux系统:信号】线程安全不等于可重入:深度拆解变量作用域与原子操作
java·linux·运维·服务器·开发语言·c++·学习
笑鸿的学习笔记16 分钟前
Qt与CMake笔记之option、宏传递与Qt Creator项目设置
开发语言·笔记·qt
楼田莉子16 分钟前
同步/异步日志系统:日志的工程意义及其实现思想
linux·服务器·开发语言·数据结构·c++
无心水16 分钟前
20、Spring陷阱:Feign AOP切面为何失效?配置优先级如何“劫持”你的设置?
java·开发语言·后端·python·spring·java.time·java时间处理
0xDevNull21 分钟前
Java 21 新特性概览与实战教程
java·开发语言·后端