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}")
相关推荐
5233AI开发笔记16 分钟前
API 返回 429:先区分限速、并发和配额,再决定是否重试
python
Dovis(誓平步青云)16 分钟前
启元 T1 Pro 人机相声搭档:语音-触摸双通道的启元机器人节奏引擎设计
开发语言·前端·javascript·microsoft·交互
databook16 分钟前
经常听到的透视表是干什么的?
python·数据分析·pandas
做科研的周师兄19 分钟前
【R语言实战】MixSIAR 氢氧同位素水源解析全流程:从混合空间校验到贝叶斯 MCMC 收敛诊断(后附完整代码)
java·大数据·开发语言
特立独行的猫A41 分钟前
我用仓颉写了个多平台发文工具:一份 Markdown,一条命令发六个平台
java·后端·python
陆陆陆六1 小时前
# 五个AI引擎的答案采集:反爬、去重与时间窗对齐的三个工程细节
python·net·ai答案采集
.痞老板.2 小时前
java ee--计算机是如何工作的
java·开发语言·java-ee
奇树谦2 小时前
Qt Quick 图片加载与 GPU 纹理机制详解:QImage、QQuickTextureFactory、QSGTexture 与异步加载
开发语言·qt·系统架构
青梅味猪大肠2 小时前
【操作系统-60】临近适应算法
java·linux·开发语言·嵌入式硬件·算法·操作系统
starzy19903 小时前
深入理解Scala可变Map:动态构建场景下的性能与设计权衡
开发语言·scala