Python的条件判断(python三个条件判断)
计算机之所以能够执行众多自动化任务,关键在于它具备自行进行条件判断的能力。
例如,当输入用户年龄后,依据不同的年龄来打印相应内容,在 Python 程序里,这可以通过 if 语句来实现,示例如下:
age = 20
if age >= 18:
print('your age is', age)
print('adult')
your age is 20
adult
按照 Python 的缩进规则,倘若 if 语句中的条件判断结果为 True,那么其缩进的语句块(这里就是两行 print 语句)将会被执行;反之,若条件判断为 False,则什么都不会执行。
我们还可以给 if 语句添加一个 else 语句,其含义是:要是 if 的条件判断结果为 False,就不执行 if 语句块中的内容,而是转去执行 else 语句块中的内容,示例如下:
age = 3
if age >= 18:
print('your age is', age)
print('adult')
else:
print('your age is', age)
print('teenager')
your age is 3
teenager
这里需要特别留意,在 if、else 等语句后面千万不要遗漏冒号 “:”,冒号是 Python 语法中用来标识语句块开始的重要标志。
当然,上述的年龄判断相对比较粗略,我们完全可以使用 elif 语句来进行更为细致的判断,示例如下:
age = 3
if age >= 18:
print('adult')
elif age >= 6:
print('teenager')
else:
print('kid')
kid
需要说明的是,elif 其实是 else if 的缩写形式,并且在一个 if 语句中是可以有多个 elif 语句存在的。所以,if 语句完整的语法形式通常呈现为如下模样:
if <条件判断1>:
<执行1>
elif <条件判断2>:
<执行2>
elif <条件判断3>:
<执行3>
else:
<执行4>
if 语句在执行时有一个显著特点,那就是它按照从上到下的顺序依次进行条件判断。一旦某个条件判断的结果为 True,在执行完与之对应的语句块后,便会直接忽略掉后面剩余的 elif 和 else 语句块。下面我们通过一个示例来测试并解释为何程序会打印出相应的结果,比如下面这段代码:
age = 20
if age >= 6:
print('teenager')
elif age >= 18:
print('adult')
else:
print('kid')
teenager
在上述代码中,首先判断 “age>= 6” 这个条件,由于年龄为 20,该条件满足(结果为 True),所以会执行对应的 print ('teenager') 语句,执行完这句后,就不会再去理会后面的 elif 和 else 语句块了,因此最终打印出来的就是 “teenager”。
此外,if 判断条件还可以进行简写,例如写成如下形式:
if x:
print('True')
在这种情况下,只要变量 x 的值是非零数值、非空字符串、非空 list 等 “有实际内容” 的情况,那么该条件就会被判断为 True;反之,若 x 是诸如 0、空字符串、空列表等情况时,则会被判断为 False。