Python从入门到高手4.3节-掌握跳转控制语句

目录

[4.3.1 理解跳转控制](#4.3.1 理解跳转控制)

[4.3.2 break-跳出整个循环](#4.3.2 break-跳出整个循环)

[4.3.3 continue-跳出本次循环](#4.3.3 continue-跳出本次循环)

[4.3.4 return-跳出函数执行](#4.3.4 return-跳出函数执行)

[4.3.5 国庆节幸福安康](#4.3.5 国庆节幸福安康)


4.3.1 理解跳转控制

我们到现在为止已经学完了Python中的条件控制和循环控制,在本节内容中,我们将学习Python中的最后一个控制结构: 跳转控制。在学习新的内容前,先回顾下条件控制以及循环控制的定义:

条件控制是指根据表达式的值,来有条件地执行程序中的指令。循环控制是指让程序指令重复地执行

理解跳转控制,可以从其字面意思来进行理解,跳转即调转方向,在程序的执行过程中通过跳转控制来控制程序的执行过程。

在Python中通过break,continue,return这三个关键字来实现程序执行流的跳转控制

4.3.2 break-跳出整个循环

break有打破和中途休息的意思,打破循环,意味着终止整个循环。我们现在来看一个代码实例,计算0到1000之间的所有数的和:

python 复制代码
"""
@author: 薯条老师
@desc: 计算[0, 1000)区间的所有数的和
"""

sum_of_numbers = 0
for number in range(1000):
    # range(1000)会生成[0, 1000)区间的一个数列
    sum_of_numbers = sum_of_numbers + number  

在循环迭代的过程中,如果需要在满足特定条件时就退出循环,比如当和大于2024时就退出循环,该怎么实现呢?首先需要在迭代时用if来判断"**和大于2024这个条件"**是否成立,如果条件成立,就执行break跳出整个循环:

python 复制代码
"""
@author: 薯条老师
@desc: 执行break语句跳出整个循环
"""

sum_of_numbers = 0
for number in range(1000):
    sum_of_numbers = sum_of_numbers + number
    # 判断和是否大于2024
    if sum_of_numbers > 2024:
        # 条件成立时就执行break跳出循环
        break
    

4.3.3 continue-跳出本次循环

与break相比,continue只会退出循环的当前这一次迭代 。假设在循环中一共需要迭代5次,在第一次迭代时执行了break, 那么剩下的4次都不会执行。

python 复制代码
"""
@author: 薯条老师
@desc: break跳出整个循环
"""

for n in 1,2,3,4,5:
     print(n)
     # 在输出1后执行break, 跳出了整个循环
     break

"""
程序的输出:
1
"""

而在第一次迭代时执行了continue,那么只结束当前这一次,程序会继续从下一个元素开始迭代。

python 复制代码
"""
@author: 薯条老师
@desc: continue只会跳出循环的当前这一次迭代
"""

for n in 1,2,3,4,5:
     if n % 2 == 0:
         # %是求余运算符,如果n与2的余数为0,说明是偶数
         # 当n是偶数时就退出,继续从下一个数开始迭代
         # 比如当n是2时会退出,继续从下一个数3开始迭代
         continue

     # 当是奇数时,才会输出。因为n是偶数时已经退出了
     print(n)

"""
程序的输出:
1
3
5
"""

4.3.4 return-跳出函数执行

编程语言中的return一般用来跳出函数的执行,通常会返回一个值给函数的调用方。关于函数以及return的用法,会在后面的教程中再进行详细讲解。

4.3.5 国庆节幸福安康

跟薯条老师学后端开发,高级爬虫(JS逆向+安卓逆向),数据分析,大数据开发,量化交易,以及机器学习+深度学习算法。坚定自己的学习目标,保持学习的热情,那你成为高手只是时间问题。

薯条老师的学生在南方电网,林氏家居,京东,阿里等大厂。想系统学习Python和Java的同学,可以移步薯条老师的个人技术博客:薯条老师的个人技术博客http://www.chipscoco.com/ 对本节教程有任何不懂的同学,亦可在评论区中进行评论。薯条老师会详细解答你们提出的每一个问题。

相关推荐
Hello.Reader1 小时前
深入浅出 Rust 的强大 match 表达式
开发语言·后端·rust
dreadp2 小时前
解锁豆瓣高清海报(二) 使用 OpenCV 拼接和压缩
图像处理·python·opencv·计算机视觉·数据分析
梦云澜2 小时前
论文阅读(十二):全基因组关联研究中生物通路的图形建模
论文阅读·人工智能·深度学习
Tester_孙大壮2 小时前
第32章 测试驱动开发(TDD)的原理、实践、关联与争议(Python 版)
驱动开发·python·tdd
IT古董3 小时前
【深度学习】常见模型-Transformer模型
人工智能·深度学习·transformer
customer084 小时前
【开源免费】基于SpringBoot+Vue.JS体育馆管理系统(JAVA毕业设计)
java·vue.js·spring boot·后端·开源
摸鱼仙人~5 小时前
Attention Free Transformer (AFT)-2020论文笔记
论文阅读·深度学习·transformer
python算法(魔法师版)5 小时前
深度学习深度解析:从基础到前沿
人工智能·深度学习
小王子10245 小时前
设计模式Python版 组合模式
python·设计模式·组合模式