zoukankan      html  css  js  c++  java
  • Python条件语句

    Python条件语句是通过一条或多条语句的执行结果(True或者False)来决定执行的代码块。可以通过下图来简单了解条件语句的执行过程。

     

    Python中的条件语句包括if、elif、else语句,用来控制程序的执行,当判断条件为真时,执行该语句下的执行体,判断条件为假时,跳过该语句。具体语法如下:

    格式1

    if 判断条件:

    执行语句……

    当判断条件为真(值为True)时,执行该条件下的执行语句;否则,不执行该条件下的语句。以下面代码为例:

    代码:

     

    结果:

     

    上述代码的执行结果为True。由于a的值为‘a’,在执行第一个判断条件时,满足a=’a’,因此执行该条件下的语句,打印出结果True

     

    格式2

    if 判断条件:

    执行语句……

    else

    执行语句……

           当判断条件为真(值为True)时,执行该条件下的执行语句;否则,执行else下的语句。需要注意的是,Python中以缩进来确定一个代码块。以下面代码为例:

    代码:

     

    结果:

    上述代码的执行结果为True。由于a的值为1,在执行第一个判断条件时,满足a>0,因此执行该条件下的语句,打印出结果True。由于已经第一个判断条件已经满足,程序不再检查其他的判断条件。对上面代码稍作改动,具体见下:

    代码:

     

    结果:

     

    上述代码的执行结果为False。由于a的值为0,在执行第一个判断条件时,不满足a>0,因此跳过该执行语句,执行else语句下的执行体,打印结果为False

    格式3

    if 判断条件:

    执行语句……

    elif 判断条件:

    执行语句……

    elif 判断条件:

    执行语句……

    else

    执行语句……

    当判断条件为多个值时,可以使用上述形式。

    Python条件语句具有以下几个特点

    1、  如果判断条件有多个时,可以使用and/or连接。

    2、  当if有多个条件时可使用括号来区分判断的先后顺序,括号中的判断优先执行,

    此外 and  or 的优先级低于>(大于)、 <(小于)等判断符号,即大于和小于在没有括号的情况下会比and/or要优先判断。

    代码:

     

    结果:

     

    3、  Python 复合布尔表达式计算采用短路规则,即如果通过前面的部分已经计算出整个表达式的值,则后面的部分不再计算。见下面例子:

    代码:

     

    结果:

     

    程序在运行过程中判断到a>0False时,由于False与任何布尔类型的值进行“与”运算的结果均为False,所以程序就不再判断表达式b/a>2的值,最终打印出结果“no”。但是,这段代码实际上是有错误的,因为0不能做除数,而在表达式b/a>2中,0做了除数。由于Python的这一特点,所以程序在运行的时候并没有报零除错误。我们将上述代码稍作修改,如下所示:

    代码:

     

    结果:

     

    我们将代码中的“and”改成了“or”,此时由于表达式(a>0)的值为False,所以程序继续计算表达式(b/a>2)的值,此时程序检查到除数为0,所以程序运行时报错。

    4、  在嵌套 if 语句中,可以把 if...elif...else 结构放在另外一个 if...elif...else 结构中。

  • 相关阅读:
    从视频中每隔固定帧进行提取图片
    np.concatenate的超简单理解
    python-OOP(面向对象)
    机器学习中的ground truth
    深度学习网络中backbone是什么意思?
    缓存
    Linux基础命令
    openoffice相关命令
    HTTP协议
    Solr基础
  • 原文地址:https://www.cnblogs.com/puheng/p/9117619.html
Copyright © 2011-2022 走看看