欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

day08 判断语句,运算符,else,elif

程序员文章站 2022-03-15 18:15:32
...
day08 判断语句,运算符,else,elif

判断语句介绍

生活中的判断场景

火车站安检

上网吧

密码判断

小总结:

  • 如果某些条件满足,才能做某件事情;条件不满足时,则不能做,这就是所谓的判断。
  • 不仅生活中有,在软件开发中"判断"功能也经常会用到

    if判断语句

    <1>if判断语句介绍

    • if语句是用来进行判断的,其使用格式如下:
        if 要判断的条件:
            条件成立时,要做的事情
    
    • demo1:(demo的中文意思:演示、案例)
        age = 30
    
        print("------if判断开始------")
    
        if age >= 18:
            print("我已经成年了")
    
        print("------if判断结束------")
    
    • 运行结果:
        ------if判断开始------
        我已经成年了
        ------if判断结束------
    
    • demo2:
        age = 16
    
        print("------if判断开始------")
    
        if age >= 18:
            print("我已经成年了")
    
        print("------if判断结束------")
    
    • 运行结果:
        ------if判断开始------
        ------if判断结束------
    

    小总结:

    • 以上2个demo仅仅是age变量的值不一样,导致结果却不同;能够看得出if判断语句的作用:就是当满足一定条件时才会执行代码块语句,否则就不执行代码块语句。

    • 注意:代码的缩进为一个tab键,或者4个空格

    <2>练一练

    要求:从键盘获取自己的年龄,判断是否大于或者等于18岁,如果满足就输出“哥,已成年,网吧可以去了”

    1. 使用input从键盘中获取数据,并且存入到一个变量中
    2. 使用if语句,来判断 age>=18是否成立

    <3>想一想

    • 判断age大于或者等于18岁使用的是 >=,如果是其他判断,还有哪些呢?

      <1> 比较(即关系)运算符

      python中的比较运算符如下表

      运算符 描述 示例
      == 检查两个操作数的值是否相等,如果是则条件变为真。 如a=3,b=3,则(a == b) 为 True
      != 检查两个操作数的值是否相等,如果值不相等,则条件变为真。 如a=1,b=3,则(a != b) 为 True
      > 检查左操作数的值是否大于右操作数的值,如果是,则条件成立。 如a=7,b=3,则(a > b) 为 True
      < 检查左操作数的值是否小于右操作数的值,如果是,则条件成立。 如a=7,b=3,则(a < b) 为 False
      >= 检查左操作数的值是否大于或等于右操作数的值,如果是,则条件成立。 如a=3,b=3,则(a >= b) 为 True
      <= 检查左操作数的值是否小于或等于右操作数的值,如果是,则条件成立。 如a=3,b=3,则(a <= b) 为 True
      >>> ## 关系运算符
      ... 
      >>> # == 等于:表示左右两个操作数是否相等,如果相等则整个表达式的值为 True;不相等则为False
      ... num1 = 15
      >>> num2 = 20
      >>> 
      >>> print(num1 == num2)
      False
      >>> 
      >>> # != 不等于
      ... print(num1 != num2)
      True
      >>> 
      >>> # > 大于
      ... print(num1 > num2)
      False
      >>> 
      >>> # < 小于
      ... print(num1 < num2)
      True
      >>> 
      >>> # >= 大于等于: num1 大于 或者 等于 num2 ,条件都成立
      ... print(num1 >= num2)
      False
      >>> 
      >>> # <= 小于等于: num1 小于 或者 等于 num2 ,条件都成立
      ... print(num1 <= num2)
      True
      >>> 
      >>> if num1 >= num2:
      ...     print("条件成立!")
      ... 
      >>>
      

      <2> 逻辑运算符

      运算符 逻辑表达式 描述 实例
      and x and y 布尔"与":如果 x 为 False,x and y 返回 False,否则它返回 y 的值。 True and False, 返回 False。
      or x or y 布尔"或":如果 x 是 True,它返回 True,否则它返回 y 的值。 False or True, 返回 True。
      not not x 布尔"非":如果 x 为 True,返回 False 。如果 x 为 False,它返回 True。 not True 返回 False, not False 返回 True
      >>> ## 逻辑运算符
      ... 
      >>> # and : 左右表达式都为True,整个表达式结果才为 True
      ... if (1 == 1) and (10 > 3):
      ...     print("条件成立!")
      ... 
      条件成立!
      
      >>> # or : 左右表达式有一个为True,整个表达式结果就为 True
      ... if (1 == 2) or (10 > 3):
      ...     print("条件成立!")
      ... 
      条件成立!
      
      >>> # not:将右边表达式的逻辑结果取反,Ture变为False,False变为True
      ... if not (1 == 2):
      ...     print("条件成立!")
      ... 
      条件成立!
      
      >>>
      

      if-else

      想一想:在使用if的时候,它只能做到满足条件时要做的事情。那万一需要在不满足条件的时候,做某些事,该怎么办呢?

      答:使用 if-else

      <1>if-else的使用格式

          if 条件:
              满足条件时要做的事情1
              满足条件时要做的事情2
              满足条件时要做的事情3
              ...(省略)...
          else:
              不满足条件时要做的事情1
              不满足条件时要做的事情2
              不满足条件时要做的事情3
              ...(省略)...
      

      demo1

          chePiao = 1 # 用1代表有车票,0代表没有车票
          if chePiao == 1:
              print("有车票,可以上火车")
              print("终于可以见到Ta了,美滋滋~~~")
          else:
              print("没有车票,不能上车")
              print("亲爱的,那就下次见了"

      结果1:有车票的情况

          有车票,可以上火车
          终于可以见到Ta了,美滋滋~~~
      

      结果2:没有车票的情况

          没有车票,不能上车
          亲爱的,那就下次见了
      

      <2>练一练

      要求:从键盘输入身高,如果身高没有超过150cm,则进动物园不用买票,否则需要买票。

      elif

      • 想一想:

        if能完成当xxx时做事情

        if-else能完成当xxx时做事情1,否则做事情2

        如果有这样一种情况:当xxx1满足时做事情1;当xxx1不满足、xxx2满足时做事情2;当xxx2不满足、xxx3满足时做事情3,那该怎么实现呢?

      • 答:

        elif

      <1> elif的功能

      elif的使用格式如下:

      
          if xxx1:
              事情1
          elif xxx2:
              事情2
          elif xxx3:
              事情3
      

      说明:

      • 当xxx1满足时,执行事情1,然后整个if结束
      • 当xxx1不满足时,那么判断xxx2,如果xxx2满足,则执行事情2,然后整个if结束
      • 当xxx1不满足时,xxx2也不满足,如果xxx3满足,则执行事情3,然后整个if结束

      demo:

      
          score = 77
      
          if score>=90 and score<=100:
              print('本次考试,等级为A')
          elif score>=80 and score<90:
              print('本次考试,等级为B')
          elif score>=70 and score<80:
              print('本次考试,等级为C')
          elif score>=60 and score<70:
              print('本次考试,等级为D')
          elif score>=0 and score<60:
              print('本次考试,等级为E')
      

      <2> 注意点

      • 可以和else一起使用

        
           if 性别为男性:
               输出男性的体重
               ...
           elif 性别为女性:
               输出女性的体重
               ...
           else:
               第三种性别的体重
               ...
        

        说明:

        • 当 “性别为男性” 满足时,执行 “输出男性的体重”的相关代码
        • 当 “性别为男性” 不满足时,如果 “性别为女性”满足,则执行 “输出女性的体重”的相关代码
        • 当 “性别为男性” 不满足,“性别为女性”也不满足,那么久默认执行else后面的代码,即 “第三种性别的体重”相关代码

      elif必须和if一起使用,否则出错

      else 一般用在最后,即所有条件都不满足时使用

相关标签: if语句