【Python入门教程】第15篇 if条件语句

本篇我们学习一下 if 语句,它可以基于某个条件执行一段代码。

简单 if 语句

if 语句可以基于某个特定的条件执行一段代码,它的语法如下:

if condition:
    if-block

if 语句首先检查条件 condition,如果它的结果为 True,继续执行 if-block 中的语句;否则,忽略其中的语句。

注意 condition 之后的冒号(:)必不可少,否则将会返回语法错误。

以下流程图演示了 if 语句的执行过程:
【Python入门教程】第15篇 if条件语句

例如:

age = input('请输入你的年龄:')
if int(age) >= 18:
    print("你已经成年了。")

以上示例提示用户输入年龄,如果输入的数字大于等于 18,将会在屏幕显示信息“你已经成年了。”;否则什么也不做。其中的条件 int(age) >= 18 将输入的字符串转换为整数之后和数字 18 进行比较。

我们执行以上示例并输入数字 18:

请输入你的年龄:18
你已经成年了。

再来看以下示例:

age = input('请输入你的年龄:')
if int(age) >= 18:
    print("你已经成年了。")
    print("你可以考驾驶证了!")

在以上示例中,如果我们输入一个大于等于 18 的数字,将会看到两条信息。

在以上示例中,代码中的缩进非常重要。if 语句之后的代码都必须缩进 4 个空格。如果没有正确使用缩进,程序执行的结果可能不同。例如:

age = input('请输入你的年龄:')
if int(age) >= 18:
    print("你已经成年了。")
print("你可以考驾驶证了!")

在以上示例中,最后一个语句总是会被执行,无论 if 语句中的条件是否满足。原因是它不属于 if 语句代码块。

请输入你的年龄:11
你可以考驾驶证了!

if else 语句

很多情况下,我们想要基于某个条件成立时执行一些操作,同时基于该条件不成立时执行其他的操作。为此,我们可以使用 if…else 语句。

if…else 语句的语法如下:

if condition:
    if-block
else:
    else-block

如果 condition 的结果为 True,执行 if-block 代码块;否则,执行 else-block 代码块。

以下流程图演示了 if…else 语句的执行过程:
【Python入门教程】第15篇 if条件语句
以下示例演示了如何使用 if…else 语句:

age = input('请输入你的年龄:')
if int(age) >= 18:
    print("你已经成年了。")
else:
    print("你还没有成年。")

在以上示例中,如果我们输入一个小于 18 的数字,将会看到以下信息:

请输入你的年龄:11
你还没有成年。

if elif else 语句

如果我们想要检查多个条件,并且基于不同的条件执行相应的操作,可以使用 if…elif…else 语句。其中,elif 代表了 else if。该语句的语法如下:

if if-condition:
    if-block
elif elif-condition1:
    elif-block1
elif elif-condition2:
    elif-block2
...
[else:
    else-block]

if…elif…else 语句依次检查每个条件(if-condition、elif-condition1、elif-condition2 等),直到发现第一个满足的条件。然后执行该条件对应的代码块,并且忽略后续的条件判断。如果没有找到任何满足的条件,执行 else 分支对应的语句;此时如果没有指定 else 分支,什么也不做。

以下流程图演示了 if…elif…else 语句的执行过程:

【Python入门教程】第15篇 if条件语句

以下示例基于年龄决定不同的售票价格:

age = input('请输入你的年龄:')

# 将输入的字符串转换为整数
your_age = int(age)

# 判断票价
if your_age < 5:
    ticket_price = 5
elif your_age < 16:
    ticket_price = 10
else:
    ticket_price = 18

# 显示最终的票价
print(f"你购买的票价为:{ticket_price}。")

在以上示例中:

  • 如果输入的年龄小于 5,票价为 5。
  • 如果输入的年龄大于等于 5 并且小于 16,票价为 10。
  • 否则,票价为 18。

总结

  • if 语句可以在某个条件成立时执行的代码。
  • if…else 语句可以在某个条件成立时执行一些代码,在该条件不成立时执行其他的代码。
  • if…elif…else 语句可以基于不同的条件执行相应的不同操作。
上一篇:【省选模拟】2 月


下一篇:【每日一题】一起冲击蓝桥杯吧——Day2【蓝桥真题】