if嵌套

通过学习if的基本用法,已经知道了

  • 当需要满足条件去做事情的这种情况需要使用if
  • 当满足条件时做事情A,不满足条件做事情B的这种情况使用if-else

想一想:

坐火车或者地铁的实际情况是:先进行安检如果安检通过才会判断是否有车票,或者是先检查是否有车票之后才会进行安检,即实际的情况某个判断是再另外一个判断成立的基础上进行的,这样的情况该怎样解决呢?

答:

if嵌套

一、if嵌套的格式

  1. if 条件1:
  2. 满足条件1 做的事情1
  3. 满足条件1 做的事情2
  4. if 条件2:
  5. 满足条件2 做的事情1
  6. 满足条件2 做的事情2
  7. Copy
  • 说明

    • 外层的if判断,也可以是if-else
    • 内层的if判断,也可以是if-else
    • 根据实际开发的情况,进行选择

      二、if嵌套的应用

      demo:
      ticket = 1     # 用1代表有车票,0代表没有车票
      knife_length = 9     # 刀子的长度,单位为cm
      if ticket == 1:
      print("有车票,可以进站")
      if knife_length < 10:
         print("通过安检")
         print("终于可以见到Ta了,美滋滋~~~")
      else:
         print("没有通过安检")
         print("刀子的长度超过规定,等待警察处理...")
      else:
      print("没有车票,不能进站")
      print("亲爱的,那就下次见了")
      Copy
      
      结果1:ticket = 1;knife_length = 9
      有车票,可以进站
      通过安检
      终于可以见到Ta了,美滋滋~~~
      Copy
      
      结果2:ticket = 1;knife_length = 20
      有车票,可以进站
      没有通过安检
      刀子的长度超过规定,等待警察处理...
      Copy
      
      结果3:ticket = 0;knife_length = 9
      没有车票,不能进站
      亲爱的,那就下次见了
      Copy
      
      结果4:ticket = 0;knife_length = 20
      没有车票,不能进站
      亲爱的,那就下次见了
      Copy
      
  • 想一想:为什么结果3和结果4相同???

    三、练一练

    情节描述:上公交车,并且可以有座位坐下
    要求:输入公交卡当前的余额,只要超过2元,就可以上公交车;如果车上有空座位,就可以坐下。