第五章 if语句
5.1 一个简单的示例
5.2 条件测试
每条if语句的核心都是一个值为True或False的表达式,这种表达式被称为条件测试。如果条件测试的值是True,那么执行紧跟后面的语句;如果是Fasle,忽略这些代码。
5.2.1 检查是否相等
“=”是赋值
“==”是检查是否相等
5.2.2 检查是否相等不考虑大小写
如果区分大小写,那么大小写不同的值意味着不相等;
但如果大小写无关紧要,而只想检查变量的值,可将变量的值转换为小写,再进行比较
>>> car = 'Audi'
>>> car.lower() == 'audi'
True
5.2.3 检查是否不相等
要判断两个值是否不等,可结合使用惊叹号和等号(!=),其中的惊叹号表示不;
requested_topping = "mushrooms"
if requested_topping != "anchovies":
print("Hold the anchovies!")
5.2.4 比较数字
检查数值
answer = 17
if answer != 42:
print("That is not the correct answer. Please try again!")
在条件语句中可包含各种数学比较,如小于、小于等于、大于、大于等于:
>>> age = 19
>>> age < 21
True
>>> age <= 21
True
>>> age > 21
False
>>> age >= 21
False
5.2.5 检查多个条件
关键字and和or可助你一臂之力。
1、 使用and检查多个条件
要检查是否两个条件都为True,可使用关键字and将两个条件测试合而为一;
(age_0 >= 21) and (age_1 >= 21)
2、使用or检查多个条件
关键字or也能够让你检查多个条件,但只要至少有一个条件满足,就能通过整个测试。仅当两个测试都没有通过时,使用or的表达式才为False。
5.2.6检查特定值是否包含在列表中
要判断特定的值是否已包含在列表中,可使用关键字in。
>>> requested_toppings = ['mushrooms', 'onions', 'pineapple']
>>> 'mushrooms' in requested_toppings
True
>>> 'pepperoni' in requested_toppings
False
5.2.7 检查特定值是否不包含在列表中
在这种情况下,可使用关键字not in。
banned_users = ['andrew', 'carolina', 'david']
user = 'marie'
if user not in banned_users:
print(user.title() + ", you can post a response if you wish.")
5.2.8 布尔表达式
与条件表达式一样,布尔表达式的结果要么为True,要么为False。布尔值通常用于记录条件。???
game_active = True
canedit = False
在跟踪程序状态或程序中重要的条件方面,布尔值提供了一种高效的方式。