zoukankan      html  css  js  c++  java
  • Python基础学习09--流程控制—条件判断(if ... elif ... else)

    流程控制—条件判断

    1、if语句

    语法:

    if 条件表达式:
        语句1
        语句2
        语句3
        ...
    •  条件表达式就是计算结果必须为布尔值的表达式
    • 表达式后面的冒号不能少
    • 注意if后面的出现的语句,如果属于if语句块,则必须同一个锁紧等级
    • 条件表达式结果为True执行if后面的缩进的语句块
    var1 = 1
    if var1:
        print("1 - if 表达式条件为 true")
        print(var1)
    
    var2 = 0
    if var2:
        print("2 - if 表达式条件为 true")
        print(var2)
    print("Good bye!")

    输出结果如下:

    1 - if 表达式条件为 true
    1
    
    Good bye!

    从结果可以看到由于变量 var2 为 0,所以对应的 if 内的语句没有执行。

    总结:当条件表达式为 0,false,'',None 时,不执行其缩进语句

    # if语句练习
    grade = 80if grade >= 90:
        print('优秀!')
    if 90 > grade >= 80:
        print('良!')
    if 80 > grade >= 70:
        print('一般')
    if 70 > grade >= 60:
        print('及格')
    if grade < 60:
        print('不及格!')
    良!

    2、if ... else语句----双向分支

    • 双向分支有两个分支,当程序执行到if ... else...语句的时候,一定会执行if或else中的一个,也仅执行一个
    • 缩进问题,if和else一个层级,其余语句一个层级

    语法:

    if 条件表达式:
        语句1
        语句2
        ...
    else:
        语句1
        语句2
        .....

    实例:

    grade = 55
    if grade >= 60:
        print('及格!')
    else:
        print('不及格!')

    输出结果如下:

    不及格!

    3、if ... elif ...... else语句----多路分支

    • 条件判断以 if 开头,其余的条件以 elif 开头,结尾的 else 表示不满足除了上面的条件以外的情况
    • 每个条件表达式后面有个 :
    • 每个条件表达式下面所对应的内容,均有缩进
    • 多路分支,只会选择一路执行!

    语法:

    if  条件表达式1:
        语句1
        ....
    elif 条件表达式2:
        语句1
        ...
    elif 条件表达式3:
        语句1
        ...
    .....
    else:
        语句1
        ....

    实例:

    # 我们对if的实例进行优化:
    grade = 77
    if grade >= 90:
        print('优秀!')
    elif 90 > grade >= 80:
        print('良!')
    elif 80 > grade >= 70:
        print('一般')
    elif 70 > grade >= 60:
        print('及格')
    else:
        print('不及格!')

    输出结果如下:

    一般
  • 相关阅读:
    el-select下拉框选项太多导致卡顿,使用下拉框分页来解决
    vue+elementui前端添加数字千位分割
    Failed to check/redeclare auto-delete queue(s)
    周末啦,做几道面试题放松放松吧!
    idea快捷键
    解决flink运行过程中报错Could not allocate enough slots within timeout of 300000 ms to run the job. Please make sure that the cluster has enough resources.
    用.net平台实现websocket server
    MQTT实战3
    Oracle 查看当前用户下库里所有的表、存储过程、触发器、视图
    idea从svn拉取项目不识别svn
  • 原文地址:https://www.cnblogs.com/wilson-5133/p/10353252.html
Copyright © 2011-2022 走看看