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}")
相关推荐
郭庆汝3 小时前
pytorch、torchvision与python版本对应关系
人工智能·pytorch·python
黄雪超6 小时前
JVM——函数式语法糖:如何使用Function、Stream来编写函数式程序?
java·开发语言·jvm
ThetaarSofVenice6 小时前
对象的finalization机制Test
java·开发语言·jvm
思则变6 小时前
[Pytest] [Part 2]增加 log功能
开发语言·python·pytest
lijingguang6 小时前
在C#中根据URL下载文件并保存到本地,可以使用以下方法(推荐使用现代异步方式)
开发语言·c#
漫谈网络7 小时前
WebSocket 在前后端的完整使用流程
javascript·python·websocket
¥-oriented7 小时前
【C#中路径相关的概念】
开发语言·c#
CoderCodingNo7 小时前
【GESP】C++四级考试大纲知识点梳理, (7) 排序算法基本概念
开发语言·c++·排序算法
恋猫de小郭7 小时前
Meta 宣布加入 Kotlin 基金会,将为 Kotlin 和 Android 生态提供全新支持
android·开发语言·ios·kotlin
JosieBook7 小时前
【Java编程动手学】使用IDEA创建第一个HelloJava程序
java·开发语言·intellij-idea