【python】判断语句的嵌套

目录

  • 布尔类型和比较运算符
  • if语句的基本格式
  • if else语句
  • if elif else语句
  • 判断语句的嵌套
  • 实战案例

学习目标:

掌握 Python 判断语句的终极用法:嵌套使用

思考

有很多场景,不仅仅是多个并列条件,还会有满足前置条件才会二次判断的多层判断需求。

对这种需求,嵌套判断语句可以实现

判断语句的嵌套

满足
不满足
满足
不满足
满足
不满足
如果
判断
如果
如果
判断
Do something
Do something
判断
Do something
Do something

许多逻辑的判断,是嵌套的,多层次的。
对于这种需求,我们可以:自由组合if elif else,完成特定需求的要求

判断语句的嵌套

基础语法格式如下:

if 条件1:
    满足条件1 做的事情1
    满足条件1 做的事情2
    if 条件2:
        满足条件2 做的事情1
        满足条件2 做的事情2

如上图,第二个 if,属于第一个 if 内,只有第一个 if 满足条件,才会执行第二个 if。

嵌套的关键点,在于:空格缩进
通过空格缩进,来决定语句之间的:层次关系

判断语句的嵌套

简单的嵌套:

print("欢迎来到北京动物园。")

if int(input("输入你的身高:")) > 120: # 编号1
    print("你的身高大于120cm,不可以免费")
    print("不过如果你的vip等级高于3,可以免费游玩")

    if int(input("请告诉我你的vip级别:")) > 3: # 编号2
        print("恭喜你,你的vip级别大于3,可以免费游玩。")
    else:
        print("Sorry,你需要补票,10元。")
else:
    print("欢迎你小朋友,可以免费游玩。")

如图:

  • 判断有 2 层
  • 当外层 if 满足条件(图中编号1)时,才会执行内层 if 判断(图中编号2)
  • 当外层 if (编号1)不满足,直接执行外层else

输出结果:

欢迎来到北京动物园。
输入你的身高:130
你的身高大于120cm,不可以免费
不过如果你的vip等级高于3,可以免费游玩
请告诉我你的vip级别:5
恭喜你,你的vip级别大于3,可以免费游玩。

1305 手动输入,并回车。

判断语句的嵌套

自由组合嵌套,需求如下:
公司要发礼物,条件是:

  1. 必须是大于等于18岁小于30岁的成年人
  2. 同时入职时间需满足大于两年,或者级别大于3才可领取
if age >= 18:
    print("成年人符合,继续判断")
    if age < 30:
        print("年龄达标继续判断")
        if year > 2:
            print("小于30岁的成年人且入职超过2年,满足条件,可以领取")
        elif level > 3:
            print("级别大于3的成年人可直接领取礼物")
        else:
            print("Sorry,年龄符合,但入职时间不足 或 级别小于等于3")
    else:
        print("您的年龄过大。不可领取")
else:
    print("Sorry,未成年人不可领取礼物")

如图:

  • if elif else 可以自由组合
  • 满足缩进的要求即可

流程图:

满足
不满足
满足
不满足
满足
不满足
满足
不满足
age
age >= 18
成年人符合
未成年人不符合
age < 30
年龄达标
年龄超过30岁
不达标
year > 2
符合领取
level > 3
级别大于3的成年人
可以领取
级别小于等于3
不可领取
age = 20
year = 3
level = 1

if age >= 18:
    print("成年人符合,继续判断")
    if age < 30:
        print("年龄达标继续判断")
        if year > 2:
            print("小于30岁的成年人且入职超过2年,满足条件,可以领取")
        elif level > 3:
            print("级别大于3的成年人可直接领取礼物")
        else:
            print("Sorry,年龄符合,但入职时间不足 或 级别小于等于3")
    else:
        print("您的年龄过大。不可领取")
else:
    print("Sorry,未成年人不可领取礼物")

输出结果:

成年人符合,继续判断
年龄达标继续判断
小于30岁的成年人且入职超过2年,满足条件,可以领取

总结:

  1. 嵌套判断语句可以用于多条件、多层次的逻辑判断
  2. 嵌套判断语句可以根据需求,自由组合 if elif else 来
    构建多层次判断
  3. 嵌套判断语句,一定要注意空格缩进,Python 通过
    空格缩进来决定层次关系
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值