if
语句用以根据条件判断如何执行代码: 如果条件为真True
,我们将运行一块语句(称作 if-block 或 if 块),否则我们将运行另一块语句(称作 else-block 或 else 块)。其中else
从句是可选的。
if
语句大致形式如下:
if <条件表达式>:
<语句块>
else:
<语句块>
单一的if
一般来说具有同样的左缩进的行会被当作一个语句块,使用一个简单的if
语句就可以根据条件来判断是否需要运行某个语句块,例如:
if 100 > 0:
print('*')
print('*' * 2)
print('*' * 3)
print('*' * 4)
运行结果:
*
**
***
****
if配合else
if-else的组合可以根据条件判断是执行哪一个语句块:如果条件为真则执行紧跟if
的语句块,否则执行紧跟else
的语句块:
if 100 > 0:
print('100 > 0')
else:
print('100 <= 0')
if -100 > 0:
print('-100 > 0')
else:
print('-100 <= 0')
运行结果:
100 > 0
-100 <= 0
插入elif
if
与else
之间可以插入一个或多个elif
来增加判断条件和对应的语句块,若if
与elif
中任意一个被匹配执行将不再执行其它语句块:
a = 100
b = 50
c = 0
if a > b * 2:
print('block 1')
elif a > c * 2:
print('block 2')
else:
print('block 3')
运行结果:
block 2
嵌套
我们可以让判断语句进行嵌套实现更加复杂的判断:
a = 100
b = 0
if a > b:
if a > b * 2:
print('good!')
else:
print('en..?')
else:
print('what?')
运行结果:
good!