第四章 if语句
5.1 简单示例
cars = ['bmw', 'bsj', 'bc']
for car in cars:
if car == 'bmw':
print(car.title())
else:
print(car.upper())
输出:Bmw
BSJ
BC
5.2 条件测试
每条if语句的核心都是一个值为True或False的表达式,这种表达式被称作条件测试。
5.2.1 检查多个条件
1.使用and检查多个条件(两个条件都为True)
age_0 = 22
age_1 = 18
age_0 >= 21 and age_1 >= 21
输出:False
2.使用or检查多个条件(其中一个条件为True就通过)
age_0 = 22
age_1 = 18
age_0 >= 21 or age_1 >= 21
输出:True
5.2.2 检查特定值是否包含在列表中
要判断特定的值是否已经包含在列表中,可使用关键字in
words = ['a', 'b', 'c']
'a' in words
输出:True
5.2.3 检查特定值是否不包含在列表中
words = ['a', 'b', 'c']
word = 'd'
if word not in words:
print(word + "不在列表中")
输出:d不在列表中
5.3 if语句
if conditional_test:
do something
5.3.1 if-else语句
age = 17
if age >= 18: #条件①
print("成年了!")
else:
print("对不起,你还年轻!")
如果条件①为True,那么就执行第一个缩进的代码块,如果条件①为False,那么便执行else下面的代码块。
5.3.2 if-elif-else语句(超过两种情况)
age = 12
if age <= 6:
print("免费进入")
elif age < 18:
print("半价进入")
else:
print("全价进入")
5.3.3 省略else代码块
Python并不要求if-elif结构后面必须有else代码块。
age = 12
if age <= 6:
print("免费进入")
elif age < 18:
print("半价进入")
elif age >= 18:
print("全价进入")
else是一个包罗万象的语句。只要不满足if或elif语句中的条件,其中的代码就会执行。
5.3.4 测试多个条件
if-elif-else结构功能强大,但仅适合用于只有一个条件满足的情况。在可能有多个条件为True,且需要在每个条件为True时都采取措施,那么就适合使用一系列独立的if语句。
5.4 使用if语句处理列表
5.4.1 检查特殊元素
numbers = [1, 2, 3, 4]
for num in numbers:
if num == 4:
print("数字4在列表中!")
else:
print(""数字4不在列表中!)
print("\n结束!")
5.4.2 使用多个列表
available_colors = ['red', 'green', 'blue', 'white', 'black']
requested_colors = ['green', 'grey', 'yellow']
for requested_color in requested_colors:
if requested_color in available_colors:
print(requested_color + "可以给你!")
else:
print("我没有" + requested_color + "这个颜色!")