作者简介: 辭七七,目前大一,正在学习C/C++,Java,Python等
作者主页: 七七的个人主页
文章收录专栏: Python入门,本专栏主要内容为Python的基础语法,Python中的选择循环语句,Python函数,Python的数据容器等。
欢迎大家点赞收藏 ⭐ 加关注哦!


Python中判断语句

  • 1. if elif else语句
  • 2. 判断语句的嵌套
  • 3. 实战案例

1. if elif else语句

某些场景下,判断条件不止一个,可能有多个。
这就需要if elif else 语句实现

看代码:

if int(input("请输入你的身高(cm):")) < 120:print("身高小于120cm,可以免费。")elif int(input("请输入你的VIP等级(1-5):")) > 3:print("vip级别大于3,可以免费。")elif int(input("请告诉我今天几号:")) == 1:print("今天是1号免费日,可以免费")else:print("不好意思,条件都不满足,需要买票10元。")

if elif else语句 注意点

elif 语句可以写多个。
判断是互斥且有顺序的。

  • 满足1(如图编号)将不会理会2和3
  • 满足2,将不会理会3
  • 1、2、3均不满足,进入else
  • else也可以省略不写,效果等同3个独立的if判断

空格缩进同样不可省略

总结:

  1. if elif else语句的作用是?
    可以完成多个条件的判断

  2. 使用if elif else的注意点有:
    elif可以写多个 判断是互斥且有序的,
    上一个满足后面的就不会判断了
    可以在条件判断中,直接写input语句,节省代码量

2. 判断语句的嵌套

有很多场景,不仅仅是多个并列条件,还会有满足前置条件才会二次判断的多层判断需求。
对这种需求,嵌套判断语句可以实现

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

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

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

简单嵌套:

如图:

  • 判断有2层
  • 当外层if满足条件时,才会执行内层if判断
  • 当外层if不满足,直接执行外层esle

我们看一个自由组合嵌套的题目,需求如下:
公司要发礼物,条件是:

  1. 必须是大于等于18岁小于30岁的成年人
  2. 同时入职时间需满足大于两年,或者级别大于3才可领取


如图:

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

总结:

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

3. 实战案例

通过逻辑判断语句,完成猜数字的案例代码编写

案例要求:

  1. 数字随机产生,范围1-10
  2. 有3次机会猜测数字,通过3层嵌套判断实现
  3. 每次猜不中,会提示大了或小了

我们可以通过如下代码,可以定义一个变量num,获得随机数字。

代码演示:

# 1. 构建一个随机的数字变量import randomnum = random.randint(1, 10)guess_num = int(input("输入你要猜测的数字:"))# 2. 通过if判断语句进行数字的猜测if guess_num == num:print("恭喜,第一次就猜中了")else:if guess_num > num:print("你猜测的数字大了")else:print("你猜测的数字小了")guess_num = int(input("再次输入你要猜测的数字:"))if guess_num == num:print("恭喜,第二次猜中了")else:if guess_num > num:print("你猜测的数字大了")else:print("你猜测的数字小了")guess_num = int(input("第三次输入你要猜测的数字:"))if guess_num == num:print("第三次猜中了")else:print("三次机会用完了,没有猜中。")

结果演示;

好了关于【Python入门篇】Python中判断语句(if elif else语句,判断语句的嵌套与实战案例),七七今天就先分享到这里,如果这篇文章对大家有帮助,请佬佬们点个赞再走吧!如果发现什么问题,欢迎评论区留言!