简述
编程时经常需检查一系列条件,并据此决定采取什么措施。在Python中,if语句让你能够检查程序当前的状态,并据此采取相应的措施。
一个简单的实例
假设你有一个汽车列表,并想将每辆汽车的名字打印出来。对于大多数汽车,都应以首字母大写的方式打印其汽车名称,但对于’bmw’,应以全大写的方式打印。
car.py
cars = ['audi','bmw','subaru','toyota']
for car in cars:
if car == 'bmw':
print(car.upper())
else:
print(car.title())
输出结果:
注意:一个等号是陈述:可理解为赋值;两个等号是发问,可理解为这两个值相等吗?大多数编程语言使用等号的方式都相同。
检查多个条件
你可能想同时检查多个条件,例如,有时候你需要在两个条件都为true时才执行相应的操作,而有时候你只要求一个条件为True时就执行相应的操作。在这些情况下,关键字and和or可助你一臂之力。
例如:
age_0 = 22
age_1 = 18
if (age_0>21) and (age_1>21):
print("两人都大于21岁\n")
else:
print("两人至少有一人不大于21岁\n")
if (age_0>21) or (age_1>21):
print("两人至少有一人大于21岁\n")
else:
print("两人都不大于21岁\n")
输出结果:
检查特定值包不包含在列表中
age =[21,22,23,24]
if 23 in age:
print("您好,你的年龄在此范围内!\n");
if 10 not in age:
print("您好,您的年龄不在此范围内!\n")
输出结果:
if-elif-else结构
经常需要检查超过两个的情形,为此可使用Python提供的if-elif-else结构。Python只执行if-else-if结构中的一个代码块,它一次检查每个条件测试,直到遇到通过了的条件测试。测试通过后,Python将执行紧跟在它后面的代码,并跳过余下的测试。
例如:
age = 12
if age<4:
print("由于您小于4岁,所以免费!\n")
elif age<18:
print("您大于四岁,小于十八岁,需要支付5元!\n")
else:
print("您大于18岁,需要支付10元!\n")
运行结果: