Python 教程 - 决策构造
在本节中,你将学习 Python 编程中的决策构造。最常用的决策构造是 if…else 构造。
if…else 声明
当你有两个语句块并且你只想根据某些条件执行一个语句块时,将使用 if…else 语句。在 Python 编程中,大多数 if…elif…else 都用作决策构造。
if 声明
在 if 声明中,你只有一个语句块,并且仅当条件为 True 时才执行此块,当条件为 False 时,将忽略该语句块。
以下是 Python 中 if 声明的语法:
if condition:
statement(s)
Python 中的 if 语句主体不是用大括号括起来,而是使用缩进。主体的末端由第一条不在同一个缩进水平的行来决定。
if 声明示例
考虑以下 if 使用语句的示例:
a = 24
if a % 2 == 0:
print(a, "is an even number")
b = 23
if b % 2 == 0:
print(b, "is an odd number")
24 is an even number
在此代码中,首先为变量 a 分配一个值,然后评估语句中的 if 条件。它通过 % 2 来检查 a 是否为偶数,也就是是否 a % 2 为零,然后控制是否打印出相应的语句。
然后 b 分配一个奇数 23。if 语句中的条件不是 True,因此 print(b, "is an odd number") 将不会执行。
if...else 声明
以下是 if...else 语句的语法:
if condition:
block of statements
else:
block of statements
在 if...else 中,如果 if 条件为 True,则执行相应的语句块,否则将执行 else 下的语句块。
if...else 声明示例
考虑下面 if...else 的代码:
a = 44
if a % 2 == 0:
print(a, "is an even number")
else:
print(a, "is an odd number")
44 is an even number
如果 a 是偶数,它将打印 a is an even number,否则将打印 a is an odd number。
注意
if 和 else 块不能同时执行或忽略。根据条件是否执行仅执行一个程序段 True。
if...elif...else 声明
以下是 if...elif...else 语句的语法:
if condition:
block of statements
elif condition:
block of statements
else:
block of statements
elif 代表 else if 它可以在此 if..elif..else 构造中多次使用。
当 if 条件为 False 时,将检查 elif 条件等等。当所有的 if 条件和 elif 条件是 False 时,else 部分将被执行。
注意
if...elif...else 仅能执行一个程序段。
if...elif...else 声明示例
考虑下面的代码,其中我们使用了用于检查多个条件的 if...elif...else 语句:
a = -34
if a > 0:
print("Number is Positive")
elif a < 0:
print("Number is Negative")
else:
print("Number is zero")
Number is Negative
嵌套 if 语句
在 Python 中,你可以在 if 内部包含另一个 if 语句,这被称为嵌套 if 语句。
你可以嵌套任何类型的 if 语句任意多次。但是在程序设计语言中使用嵌套 if 结构并不是一个好习惯,因为程序的可读性会因此而变差。
嵌套 if 语句示例
在以下代码中,嵌套 if 结构用于查找最大数量:
T = 52
if T > 25:
if T < 50:
print("Temperature is higher than 25 but lower than 50")
else:
print("Temperature is higher than 50")
else:
if T < 0:
print("Temperature is lower than 0")
else:
print("Temperature is higher than 0 but lower than 25")
Temperature is higher than 50
