Python之if语句
应用场景
编程时经常需要检查一列条件并根据此条件决定采取什么措施
选择条件的实例:简单的if结构
#如果天气晴朗,我们去室外散步;否则继续宅在家里
'''
如果 天气晴朗:
我们去室外散步
否则:
继续宅在家里
'''
state = '晴朗'
if state == '晴朗':
print('室外散步')
else:
print('宅在家里')
室外散步
条件表达测试布尔表达式
比较运算符:(==、!=、>、<、>=、<=)
逻辑运算符:(and、or)
成员运算符:(in、not in)
if语句结构
使用不同的条件做不同的事情
简单的if语句
if-else语句
if-elif-else结构
多重if结构
注意事项:else代码也不是必须的
if语句在列表中的应用
检查元素
确定列表是不空的
使用多个列表
条件表达测试布尔表达式
比较运算符
#比较运算符在条件表达式的应用:ATM/客服电话(请输入1,请输入2....)
#==
key = 1
if key == 1:
print('存款')
else:
print('取款')
存款
#!=
if key != 1:
print('不存款')
else:
print('存款')
存款
#>=
age = 18
if age >= 18:
print("允许进入网吧")
else:
print('未成年人禁止进入')
允许进入网吧
#其他运算符都是一个道理
逻逻辑运算符:and、or
#and
age = 16
money = 50
if age >= 18 and money >= 100:
print('欢迎光临')
else:
print('抱歉')
抱歉 #and两边的条件必须都得成立
#or
age = 16
money = 100
if age >= 18 or money >= 100:
print('欢迎光临')
else:
print('抱歉')
欢迎光临 #or两边的条件只需要满足一个就行
#
age = 16
money = 100
id_hard = True #布尔值
if (age >= 18 or money >= 100) and id_hard: #对于布尔值(True/or)可以省略
print('欢迎光临')
else:
print('抱歉')
欢迎光临
总结and和or的区别:
and两边的条件必须都得成立
or两边的条件只需要满足一个就行
成员运算符:in、not in
#定义列表
#in
names = ['John','Bili','Laoyew']
name = 'Kety'
if name in names:
print('存在')
else:
print('不存在')
不存在
#在列表中加一个kety查看效果
names = ['John','Bili','Laoyew','kety']
name = 'Kety'
if name in names:
print('存在')
else:
print('不存在')
不存在
#因为添加的kety是小写,而定义的变量是大写的Kety,对于这种情况可以采用忽略大小写转换的方法
names = ['John','Bili','Laoyew','kety']
name = 'Kety'
if name.lower() in names:
print('存在')
else:
print('不存在')
存在
#not in
if name.upper() not in names:
print('no')
else:
print('yes')
no
条件测试的表达是的结果就是布尔值,要么是True,要么是False,不能用一个等值条件来做
if语句结构
#简单的if
age = 0
if age == 0:
print('婴儿')
婴儿
#if-else
age = 3
if age >= 2 and age <= 4:
print('蹒跚学步')
else:
print('婴儿')
蹒跚学步
#if-elif-else
age = 7
if age == 0:
print('婴儿')
elif age >= 2 and age <= 4:
print('蹒跚学步')
elif age > 4 and age <= 6:
print('上幼儿园')
else:
print('其他')
其他
#else代码不是必须的,如果去掉else,是没有输出结果的
如果在符合一个条件之后里面又有一个条件该怎么表示
#男女学生参加100米赛跑,如果在10秒内跑完的,进入决赛;
#进入决赛,分男子组合进行比赛
#多重if结构
second = 6
gender = '男'
if second < 10:
print('进入决赛')
if gender == '男':
print('进入男子组')
elif gender == '女':
print('进入女子组')
else:
print('重在参与,弘扬体育精神')
进入决赛
进入男子组
if语句在列表中的应用
for f in fruits:
if f == 'pear':
print('做个梨罐头')
elif f == 'orange':
print('做句子罐头')
elif f == 'apple':
print('做苹果罐头')
else:
print('做沙拉')
做苹果罐头
做沙拉
做个梨罐头
做句子罐头 #最后结果的顺序是列表内的顺序
fruits = ['apple','banana','pear','orange']
if len(fruits) == 0:
print('没有水果')
else:
print('开始做水果罐头了')
for fruit in fruits:
print(fruit,end=" ")
开始做水果罐头了
apple banana pear orange
练习
1、求100以内数字的偶数之和与奇数之和
#偶数之和
print(sum(range(2,101,2)))
#奇数之和
print(sum(range(1,101,2)))
2550
2500
2、输出100以内7的倍数的数字
for i in range(1,101):
if i % 7 == 0:
print(i,end=" ")
7 14 21 28 35 42 49 56 63 70 77 84 91 98
3、打印直角三角形,奇数用*号代替,偶数用#号代替
for i in range(1,10):
for j in range(i):
if j+1 in range(1,11,2):
print('*',end=" ")
else:
print('#',end=" ")
print()
*
* #
* # *
* # * #
* # * # *
* # * # * #
* # * # * # *
* # * # * # * #
* # * # * # * # *