脚本之家,脚本语言编程技术及教程分享平台!
分类导航

Python|VBS|Ruby|Lua|perl|VBA|Golang|PowerShell|Erlang|autoit|Dos|bat|

服务器之家 - 脚本之家 - Python - Python基础学习之条件控制语句小结

Python基础学习之条件控制语句小结

2021-11-16 10:58布小禅 Python

如果我需要设置一个死循环,然后靠条件来终止,怎么办?一个很简单的问题,但是我却没有说,这一篇本应该在分支控制语句里面的,现在只能拿出来水文再写一篇了,需要的朋友可以参考下

一、条件控制语句的补充

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

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

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

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

二、break

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

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

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

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

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

运行结果:

Python基础学习之条件控制语句小结

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

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

运行结果:

Python基础学习之条件控制语句小结

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

三、continue

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

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

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

行不通

Python基础学习之条件控制语句小结

退出不了!

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

我先不说,你先看:

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

运行结果:

Python基础学习之条件控制语句小结

四、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,并且也能把缩进,代码层次和代码运行的过程给 了解,那样就很棒了

到此这篇关于Python基础学习之条件控制语句小结的文章就介绍到这了,更多相关Python条件控制语句内容请搜索服务器之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持服务器之家!

原文链接:https://blog.csdn.net/m0_52883898/article/details/117308259

延伸 · 阅读

精彩推荐