一个简单示例
if 语句
下面是一个简单示例,演示如何if语句
cars=['audi','bmw','subaru','toyota']
for car in cars:
if car=='bmw':
print(car.upper())
else:
print(car.title())
Audi
BMW
Subaru
Toyota
条件测试
每条if语句的核心都是一个值为true或者false的表达式,这种表达式被称为条件测试。如果条件测试的值为true,则执行紧跟在if语句后面的代码,如果是false,就不执行。
检查相等时考虑大小写
car='bmw'
car=='Bmw'
false
大小写不同会影响结果,如果不想比较大小写,可用方法lower(),他不会改变存储在变量中的值
检查是否不相等
用!=来判断是否相等
a='q'
if a!='x':
print('you are right')
比较数字
和上面的例子基本相同
检查多个条件
使用and检查两个条件是否都为True,都是true才会通过。
age_0=12
age_1=13
age_0<=19 and age_1<=17
true
age_0<=19 and age_1>=18
false
使用or检查多个条件
至少有一个条件满足,结果就是true,当两个都不满足时,结果才为false
检查特定值是否包含在列表中
使用关键词in
cars=['audi','bmw','subaru','toyota']
'audi'in cars
True
'a' in cars
False
检查特定值是否不包含在列表中
使用not in
布尔表达式
他不过是条件表达式的别名,结果是True或者False.在跟踪程序状态或者程序中重要的条件方面,布尔值很高效
game_active=True
can_edit=False
if语句
简单的if语句
a=19
if a>=4:
print('nb')
if-else 语句
其中的else语句执行条件未通过时的操作
a=19
if a>=4:
print('nb')
else:
print('not nb')
if-elif-else语句
age=21
if age<=19:
print(age)
elif age<=33:
print(age)
else:
print('太大了')
if语句如果通过就跳过下面的语句
elif语句仅在if语句未通过时才会运行,如果通过就跳过下面的语句
else语句在上面的语句都未通过时执行
使用多个elif代码块
可根据需要添加多个elif语句
省略else代码块
python并不要求必须含有else代码块
age=21
if age<=19:
print(age)
elif age<=33:
print(age)
elif age>=77:
print('太大了')
测试多个条件
if-elif-else语句功能强大,但只适用于单个条件,如果条件很多,可使用不包含elif和else的多个简单的if语句
cars=['audi','bmw','s','toyota']
if 'audi' in cars:
print('a')
if 'bm' in cars:
print('b')
if 's' in cars:
print('s')
a
s
总之,如果你想运行一个代码块就用if-elif-else语句,多个代码块就用一系列独立的if语句
使用if语句处理列表
如果客户点的披萨里的青椒用完了,该怎么处理呢
requested_toppings = ['mushrooms', 'green peppers', 'extra cheese']
for requested_topping in requested_toppings:
if requested_topping =='green peppers':
print("Sorry, we don't have " + requested_topping + ".")
else:
print('ok')
print("\nFinished making your pizza!")
在for循环中添加if语句即可
确保列表不是空的
在后面的章节里,列表很可能为空,就需要换种方法
requested_toppings=[]
if requested_toppings:
for requested_topping in requested_toppings:
print('ok')
print("\nFinished making your pizza!")
else:
print('ni xiang yige kongdepisama?')
在这里,我们创建了一个空的列表,然后使用了for循环,在if语句中将列表名用在条件表达式中时,如果列表包含了至少一个元素时,返回True,列表为空时返回false,在这里这个列表为空,所以运行else后的程序
使用多个列表
available_toppings = ['mushrooms', 'olives', 'green peppers',
'pepperoni', 'pineapple', 'extra cheese']
requested_toppings = ['mushrooms', 'french fries', 'extra cheese']
for requested_topping in requested_toppings:
if requested_topping in available_toppings:
print("Adding " + requested_topping + ".")
else:
print("Sorry, we don't have " + requested_topping + ".")
print("\nFinished making your pizza!")