if语句
条件测试
每条if语句的核心都是一个值为True或者False的表达式,若条件测试的值是True,则会执行紧接着的代码;若条件测试的值是False,则忽略后续的代码。
检查相等性
food = 'rice' #一个等号将rice的值设置为rice
food == 'rice' #两个等号检查是否相等
#大小写会影响判断是否相等,进行比较时两个值完全相等才会输出True
#输出
True
food = 'noodles' #将food的值设置为noodles
if food != 'rice': #if语句判断food的值是否为rice
#如果不相等则为True,执行紧接着的语句;如果相等则为Fase,不执行
print('Wrong!')
#输出
Wrong!
数值比较
一个等号代表陈述,两个等号代表反问。
条件语句包括数学比较:小于、大于、小于等于、大于等于。
age = 21
age == 21
#输出
True
age = 21
age > 18
#输出
True
判断多个条件
使用and和or可以检查判断多个条件。
and:当两个条件都为True时,整个表达式才为True,有一个条件或两个都没有通过就为False;
or:只要其中一个条件或者两个条件都为True,整个表达式就为True。
wang = 21
zhao = 26
wang >= 25 and zhao <= 30
#输出
False
wang = 21
zhao = 26
wang >= 25 or zhao <= 30
#输出
True
判断列表是否包含某元素
当要判断某个特定的元素是否包含在列表元素里,可以使用in或者not in 。
foods = ['chicken','fish','meat','beef']
'rice' in foods
#输出
False
foods = ['chicken','fish','meat','beef']
favorite = 'chicken'
if favorite not in foods:
print('I need it.')
#输出
I need it.
布尔表达式
布尔表达式的结果有两种,要么为True,要么为False,通常用于记录条件 。
game_active = True
can_edit = False
简单的if语句
当只需判断一个条件测试时,使用if语句。
foods = ['chicken','fish','meat','beef']
if 'chicken' in foods:
print('I like it.')
#输出
I like it.
If-else语句
当判断条件测试是否通过时,通过执行一条语句,不通过则执行另一条语句,使用if-else语句。
foods = ['chicken','fish','meat','beef']
if 'rice' in foods:
print('I like it.')
else:
print('I hate it.')
#输出
I hate it.
if-elif-else语句
当判断条件测试超过了两个,使用if-elif-else语句。
age = 21
if age < 6:
print(1)
elif age <18:
print(2)
else:
print(3)
#输出
3
多个elif语句
当判断条件有很多个,可以连续使用多个elif语句。
可以省略else语句,因为只要不满足if和elif任何一个条件测试,就会执行其代码。
age = 21
if age < 6:
print(1)
elif age <18:
print(2)
elif age <30:
print('yep!')
else:
print(3)
#输出
yep!
测试多个条件
上述介绍的if-elif else结构只适用于只有一个条件满足的情形,当一个测试通过后就会跳过余下的测试。若存在多个条件都通过的情形,并且每个条件为True时都要执行相应的语句,可以使用多个if语句。
foods = ['chicken','fish','meat','beef']
if 'fish' in foods:
print('I')
if 'beef' in foods:
print('like')
if 'chicken' in foods:
print('them')
if 'rice' in foods:
print('No')
#输出
I
like
them