【黑马程序员】 第一阶段-第三章:Python 判断语句
目录:
[TOC]
进行逻辑判断,是生活中常见的行为。同样,在程序中,进行逻辑判断也是最为基础的功能。

判断是程序最基础、最核心的逻辑功能。
一、布尔类型和比较运算符
进行判断,只有 2 个结果:
- 是;
- 否。

程序中使用布尔类型来描述是或否。
布尔(bool)表达现实生活中的逻辑,即真和假:
True表示真;False表示假。
True 本质上是一个数字,记作 1;False 记作 0。
布尔类型的字面量:
True表示 真(是、肯定);False表示 假(否、否定)。
定义变量存储布尔类型数据:
1 | 变量名称 = 布尔类型字面量 |
布尔类型不仅可以自行定义,同时也可以通过计算得来;也就是使用比较运算符进行比较运算得到布尔类型的结果。
示例代码 1:
1 | result = 10 > 5 |
输出结果 1:
1 | 10 > 5 的结果是:True,类型是:<class 'bool'> |
示例代码 2:
1 | result = "itcast" == "itheima" |
输出结果 2:
1 | 字符串 itcast 是否和 itheima 相等,结果是:False,类型是:<class 'bool'> |
比较运算符:
| 运算符 | 描述 | 示例 |
|---|---|---|
== |
判断内容是否相等,满足为 True,不满足为 False |
如 a = 3,b = 3,则 (a == b) 为 True |
!= |
判断内容是否不相等,满足为 True,不满足为 False |
如 a = 1,b = 3,则 (a != b) 为 True |
> |
判断运算符左侧内容是否大于右侧,满足为 True,不满足为 False |
如 a = 7,b = 3,则 (a > b) 为 True |
< |
判断运算符左侧内容是否小于右侧,满足为 True,不满足为 False |
如 a = 3,b = 7,则 (a < b) 为 True |
>= |
判断运算符左侧内容是否大于等于右侧,满足为 True,不满足为 False |
如 a = 3,b = 3,则 (a >= b) 为 True |
<= |
判断运算符左侧内容是否小于等于右侧,满足为 True,不满足为 False |
如 a = 3,b = 3,则 (a <= b) 为 True |
示例代码:
1 | """ |
二、if 语句的基本格式
生活中的判断:
if 判断语句的基本格式:
1 | if 要判断的条件: |
示例代码:
1 | age = 18 |
当 age 为 18 时,执行结果:
1 | 今年我已经 18 岁了 |
当 age 为 10 时,执行结果:
1 | 今年我已经 10 岁了 |
由上述代码可知:当 if 判断条件结果为 True 时,代码会被执行;当 if 判断条件结果为 False 时,代码不会执行。
if 语句的注意点:
- 判断语句的结果必须是布尔类型
True或False,True会执行if内的代码语句,False则不会执行; - 不要忘记判断条件后的
:冒号; - 归属于
if判断的代码语句快,需在前方填充4个空格缩进(Python 通过缩进判断代码块的归属关系):
三、if else 组合判断语句
if满足条件会执行相应的代码语句,如果不满足呢?
有没有不满足的情况下,可供执行的代码呢?
if else语句可以实现。
生活中的判断:
if else 语句的基本格式:
1 | if 条件: |
示例代码:
1 | print("欢迎来到黑马儿童游乐场,儿童免费,成人收费。") |
if else 语句注意点:
else后,不需要判断条件;- 和
if的代码块一样,else的代码块同样需要4个空格作为缩进:
四、if elif else 组合使用的语法
某些场景下,判断条件不止一个,可能有多个。
这种需求能用 Python 实现吗?
if elif else语句可以实现。
生活中的判断:
if elif else 语句的基本格式:
1 | if 条件 1: |
示例代码:
1 | print("欢迎来到黑马动物园。") |
if elif else 语句注意点:
elif语句可以写多个。- 判断是互斥且有顺序的,上一个满足后面的就不会判断了:
- 满足 1(如上述代码中的编号)将不会理会 2 和 3;
- 满足 2,将不会理会 3;
- 1、2、3 均不满足,进入
else; else也可以省略不写,效果等同 3 个独立的if判断。
- 空格缩进同样不可省略:

对于上述示例代码,可以如下述代码所示,将 input 输入语句直接写入判断条件中:
1 | print("欢迎来到黑马动物园。") |
如上述修改后的代码所示,可以节省代码量。
五、判断语句的嵌套
有很多场景,不仅仅是多个并列条件,还会有满足前置条件才会二次判断的多层判断需求。
对这种需求,嵌套判断语句可以实现。
许多逻辑的判断,是嵌套的、多层次的:
对于这种需求,我们可以自由组合 if elif else,完成特定需求的要求。
判断语句的嵌套的基础语法格式如下:
1 | if 条件 1: |
如上述代码所示,第二个 if 属于第一个 if 内,只有第一个 if 满足条件,才会执行第二个 if。
嵌套的关键点在于空格缩进,通过空格缩进来决定语句之间的层次关系。
简单嵌套:
1 | print("欢迎来到黑马动物园。") |
如上述代码所示:
- 判断有 2 层:
- 当外层
if满足条件(上述代码中编号 1)时,才会执行内层if判断(上述代码中编号 2); - 当外层
if(编号 1)不满足,直接执行外层else。
- 当外层
自由组合嵌套,需求如下:
公司要发礼物,条件是:
- 必须是大于等于 18 岁小于 30 岁的成年人;
- 同时入职时间需满足大于两年,或者级别大于 3 才可领取。
示例代码:
1 | age = 20 |
如上述代码所示:
ifelifelse可以自由组合;- 满足缩进的要求即可。
六、判断语句综合案例
案例需求:
定义一个数字(1 ~ 10,随机产生),通过 3 次判断来猜出来数字。
案例要求:
- 数字随机产生,范围 1 - 10;
- 有 3 次机会猜测数字,通过 3 层嵌套判断实现;
- 每次猜不中,会提示大了或小了。
提示:
通过如下代码:
1
2 import random
num = random.randint(1, 10)可以定义一个变量
num,变量内存储随机数字。
示例代码:
1 | """ |
- 标题: 【黑马程序员】 第一阶段-第三章:Python 判断语句
- 作者: AnXin
- 创建于 : 2025-10-04 14:11:37
- 更新于 : 2025-10-04 14:15:00
- 链接: https://anxin-hitsz.github.io/2025/10/04/【黑马程序员】-第一阶段-第三章:Python-判断语句/
- 版权声明: 本文章采用 CC BY-NC-SA 4.0 进行许可。


