2.2.1. 什么是if语句?

到目前为止,你编写的 Python 代码都是按顺序执行的,解释器会从上到下一行一行地运行代码。

但是,在现实世界中,我们经常需要根据不同情况执行不同的代码
例如:

  • 如果下雨了,就带伞。
  • 如果有足够的钱,就去看电影,否则就在家看电视。

在 Python 中,我们使用 if 语句 来让程序具备决策能力,从而实现控制流


2.2.2. if 语句的基本结构

if 语句的基本格式如下:

if 条件:
    # 代码块(缩进)

示例 1:基本的 if 语句

is_raining = True

if is_raining:
    print("带伞出门!")  
  • if 后面跟着一个条件(is_raining)。
  • 如果 is_raining 是 True,那么 print(“带伞出门!”) 这行代码会被执行。
  • 否则,什么都不会发生。

2.2.3. 条件必须是布尔值

Python 中的 if 语句必须使用布尔值(True 或 False),或者能够返回布尔值的表达式

例如,下面的条件都可以用于 if 语句:

age = 20
if age >= 18:  # 这个条件返回 True 或 False
    print("你已成年,可以投票!")

2.2.4. if-else 语句

如果想在条件不满足时执行不同的代码,我们可以使用 else 语句:

if 条件:
    # 当条件为 True 时执行
else:
    # 当条件为 False 时执行

示例 2:if-else 语句

has_dog = False

print("我需要遛狗吗?")

if has_dog:
    print("是的,你需要遛狗。")
else:
    print("不,我没有狗。")

运行结果(当 has_dog = False 时):

我需要遛狗吗?
不,我没有狗。
  • if has_dog: 检查变量 has_dog 是否为 True。
  • 如果 has_dog 是 True,则执行 print("是的,你需要遛狗。")
  • 否则,执行print("不,我没有狗。")

2.2.5. if-elif-else 语句

如果有多个条件,可以使用 elif(即 “else if”):

if 条件1:
    # 代码块 1
elif 条件2:
    # 代码块 2
else:
    # 代码块 3

示例 3:多重条件判断

age = 16

if age >= 18:
    print("你可以投票!")
elif age >= 16:
    print("你可以学车!")
else:
    print("你还太小了!")
  • 如果 age >= 18,执行 “你可以投票!”,然后跳过后续条件。
  • 否则,如果 age >= 16,执行 “你可以学车!”,然后跳过后续条件。
  • 否则,执行 “你还太小了!”。

2.2.6. if 语句中的缩进

Python 依赖缩进来确定代码块,所有属于 if 语句的代码必须缩进(通常是 4 个空格或 1 个 Tab)。

示例(正确的缩进方式)

if True:
    print("这行代码会执行")  # 缩进正确
print("这行代码总是会执行")  # 这个不属于 if 语句

错误示例(没有正确缩进,会报错)

if True:
print("这行代码不会执行")  # IndentationError: expected an indented block

2.2.7. if 语句的条件表达式

if 语句的条件通常是比较运算符逻辑运算符的结果,例如:

1. 比较运算符

运算符 说明 示例
== 等于 x == y
!= 不等于 x != y
> 大于 x > y
< 小于 x < y
>= 大于等于 x >= y
<= 小于等于 x <= y
temperature = 30

if temperature > 25:
    print("天气很热!")

2. 逻辑运算符

运算符 说明 示例
and (两个条件都为 True 时才返回 True) x > 10 and x < 20
or (任意一个条件为 True 时返回 True) x > 10 or x < 5
not (取反) not x > 10
age = 19
has_id = True

if age >= 18 and has_id:
    print("你可以进入俱乐部。")

2.2.8. 总结

  • if 语句 让程序可以根据不同情况执行不同的代码
  • if-else 语句 允许在条件为 False 时执行不同的代码。
  • if-elif-else 语句 适用于多个条件的情况。
  • 缩进在 Python 中至关重要,所有 if 语句的代码块必须正确缩进。
  • if 语句的条件可以使用
    • 比较运算符==!=><>=<=
    • 逻辑运算符andornot
Logo

开源鸿蒙跨平台开发社区汇聚开发者与厂商,共建“一次开发,多端部署”的开源生态,致力于降低跨端开发门槛,推动万物智联创新。

更多推荐