趁着课余时间学点Python(六)终止循环,阻断循环

简介: 趁着课余时间学点Python(六)终止循环,阻断循环


image.png

文章目录


前言

如果我需要设置一个死循环,然后靠条件来终止,怎么办?

一个很简单的问题,但是我却没有说,这一篇本应该在分支控制语句里面的,现在只能拿出来水文再写一篇了


条件控制语句的补充

在循环里面,我们可以通过关键字来手动终止循环,而不是把整个程序停了来终止。

三种语句:break return continue都可以使循环停止

不过return一般都是用到函数里面的,都是使用break

而continue 不是用来终止循环的,具体作用看下面代码示例


break

看汉语也有个大概思想:打破

它的作用是打破循环,使循环碰到它后终止

break的作用是打破结构体,使程序退出当前代码块

下面看这个例子,我们要实现的功能是循环获取用户从键盘输入的数据,直到输入q来推出程序

while True:
    a = input()
    if a == "q":
        break
    else:
        print(a + "  输入成功,输入 'q' 退出程序")

运行结果:

image.png

此时我们发现,输入q推出了,但是我们看着并不舒服,我们还可以加个提示,或者让他再输入一次“确认”来确认是否要推出

while True:
    a = input()
    if a == "q":
        print("确定要推退出,确定的话,请输入确定退出来确定")
        if input() == "确定退出":
            print("已退出,程序结束")
        break
    else:
        print(a + "  输入成功,输入 'q' 退出程序")

运行结果:

image.png

这样就完美了,我这可不是谁字数啊,我这是强迫症(认真脸)!


continue

continue是跳出当前循环,执行下一循环,也就是说,他并没有令循环终止的能力,他只能令循环少循环一些次数

我们先把上面的代码里面的break换成continue试试

while True:
    a = input()
    if a == "q":
        print("确定要推退出,确定的话,请输入确定退出来确定")
        if input() == "确定退出":
            print("已退出,程序结束")
    else:
        print(a + "  输入成功,输入 'q' 退出程序")

行不通

image.png

退出不了!

果然吧,那么continue有啥用呢?

我先不说,你先看:

for i in range(10):
    if i % 5 == 0:
        continue
    else:
        print(i)  

运行结果:

image.png

return

return意为返回,是用在函数中的返回值的,至于函数是什么,我们会在本专栏中陆续讲述,你先看效果就可以了

我们计算当i的值循环到5时,让a+b,然后计算完终止

当i为5时,不管循环是否进行完,都会强行终止

def sum(a, b):
    for i in range(10):
        if i<a:
            pass
        else:
            a+=b
            return a
print(sum(5, 2))

pass的意思就相当于什么都不做

运行结果为:7

那么如果我们把return的位置换一下呢?

def sum(a, b):
    for i in range(10):
        if i<a:
            pass
        else:
            a+=b
        return a
print(sum(5, 2))

我们的循环会在第一次就终止,因为第一次i的值为0,满足判断条件,执行return语句,结束循环

那么如果我们再换一下呢?我们这次放在循环外面,那么肯定是循环执行完才会结束了,会把a+=b执行一次,还是7

def sum(a, b):
    for i in range(10):
        if i<a:
            pass
        else:
            a+=b
    return a
print(sum(5, 2))


结语

本来打算把迭代器生成器也写了的,但是想想还是别了

如果你能把这理解了,那么后面就不会有什么困难了,我也不是不想写很简单的例子,当然这个也算不得多难,但是确实是有一点绕和浪费资源的。

我希望你们不仅在这篇博客会了break,continue,return,并且也能把缩进,代码层次和代码运行的过程给 了解,那样就很棒了

兴趣是最好的老师,坚持是不变的真理。

学习不要急躁,一步一个脚印,踏踏实实的往前走。

每天进步一点点,日积月累之下,你就会发现自己已经变得很厉害了。

我是布小禅,一枚自学萌新,跟着我每天进步一点点吧!

说了这么多暂时也就够了,那么就告辞吧

image.png


目录
相关文章
|
3天前
|
算法 Java Docker
(Python基础)新时代语言!一起学习Python吧!(三):IF条件判断和match匹配;Python中的循环:for...in、while循环;循环操作关键字;Python函数使用方法
IF 条件判断 使用if语句,对条件进行判断 true则执行代码块缩进语句 false则不执行代码块缩进语句,如果有else 或 elif 则进入相应的规则中执行
54 1
|
3月前
|
Python
Python中的循环可以嵌套使用吗?
Python中的循环可以嵌套使用吗?
177 57
|
5月前
|
机器学习/深度学习 算法 关系型数据库
Python循环进阶:嵌套与控制的深度解析
本文深入探讨Python中嵌套循环的原理与应用,从数学模型到工程实践全面解析。内容涵盖嵌套循环的本质(如笛卡尔积实现、变量作用域)、精细控制技巧(如break/continue、迭代器协议、异常处理),以及性能优化策略(预计算、向量化等)。同时结合树形结构遍历、动态规划、游戏开发等典型场景,提供最佳实践建议。掌握这些技巧,助你突破编程瓶颈,实现复杂问题的优雅解决。
175 6
|
6月前
|
存储 Shell 开发者
Python用户输入与While循环
本文介绍了Python中用户输入与while循环的结合使用,通过`input()`函数获取用户输入,并利用while循环实现重复操作,如创建交互式程序或用户驱动的循环。示例代码展示了如何让用户输入数字并计算总和,直到输入指定退出命令。这种组合能帮助开发者构建强大的交互式Python应用。
156 1
|
测试技术 Python
Python接口自动化测试框架(基础篇)-- 流程控制之循环语句for&while
本文介绍了Python中的循环语句,包括while和for循环的使用,range()函数的运用,以及continue、break和pass关键字的说明,同时提出了关于while循环是否能与成员运算符结合使用的思考。
172 1
Python接口自动化测试框架(基础篇)-- 流程控制之循环语句for&while
|
11月前
|
开发工具 Python
[oeasy]python043_自己制作的ascii码表_循环语句_条件语句_缩进_indent
本文介绍了如何使用Python制作ASCII码表,回顾了上一次课程中`print`函数的`end`参数,并通过循环和条件语句实现每8个字符换行的功能。通过调整代码中的缩进,实现了正确的输出格式。最后展示了制作完成的ASCII码表,并预告了下一次课程的内容。
125 2
|
11月前
|
Python
在 Python 中实现各种类型的循环判断
在 Python 中实现各种类型的循环判断
194 2
|
11月前
|
Python
Python 中,循环判断
Python 中,循环判断
193 1
|
11月前
|
人工智能 Python
[oeasy]python039_for循环_循环遍历_循环变量
本文回顾了上一次的内容,介绍了小写和大写字母的序号范围,并通过 `range` 函数生成了 `for` 循环。重点讲解了 `range(start, stop)` 的使用方法,解释了为什么不会输出 `stop` 值,并通过示例展示了如何遍历小写和大写字母的序号。最后总结了 `range` 函数的结构和 `for` 循环的使用技巧。
121 6
|
12月前
|
Java 索引 Python
【10月更文挑战第19天】「Mac上学Python 30」基础篇11 - 高级循环技巧与应用
本篇将介绍更深入的循环应用与优化方法,重点放在高级技巧和场景实践。我们将讲解enumerate()与zip()的妙用、迭代器与生成器、并发循环以及性能优化技巧。这些内容将帮助您编写更高效、结构更合理的代码。
142 5

热门文章

最新文章

  • 1
    Python零基础爬取东方财富网股票行情数据指南
    46
  • 2
    解析Python爬虫中的Cookies和Session管理
    52
  • 3
    Python日志模块配置:从print到logging的优雅升级指南
    42
  • 4
    【可视化大屏】全流程讲解用python的pyecharts库实现拖拽可视化大屏的背后原理,简单粗暴!
    40
  • 5
    (Pandas)Python做数据处理必选框架之一!(二):附带案例分析;刨析DataFrame结构和其属性;学会访问具体元素;判断元素是否存在;元素求和、求标准值、方差、去重、删除、排序...
    49
  • 6
    (Pandas)Python做数据处理必选框架之一!(一):介绍Pandas中的两个数据结构;刨析Series:如何访问数据;数据去重、取众数、总和、标准差、方差、平均值等;判断缺失值、获取索引...
    72
  • 7
    (numpy)Python做数据处理必备框架!(二):ndarray切片的使用与运算;常见的ndarray函数:平方根、正余弦、自然对数、指数、幂等运算;统计函数:方差、均值、极差;比较函数...
    42
  • 8
    (numpy)Python做数据处理必备框架!(一):认识numpy;从概念层面开始学习ndarray数组:形状、数组转置、数值范围、矩阵...
    64
  • 9
    (Python基础)新时代语言!一起学习Python吧!(四):dict字典和set类型;切片类型、列表生成式;map和reduce迭代器;filter过滤函数、sorted排序函数;lambda函数
    34
  • 10
    (Python基础)新时代语言!一起学习Python吧!(三):IF条件判断和match匹配;Python中的循环:for...in、while循环;循环操作关键字;Python函数使用方法
    54
  • 推荐镜像

    更多