一、单向判断:if
- 意思就是:如果……就……
- if(条件)后须跟随英文冒号:
# 为钱包赋值
money = 1000
# 条件:如果有1000块钱以上(包含1000块),就去吃日料
if money>=1000:
# 结果:显示‘你去吃日料’的结果
print('金刚狼带凤凰女去吃日料')
-
这段代码的实现逻辑是:
-
首先,第一行代码,用=号对当前情况进行赋值:将钱包1000赋值给变量money。
-
第二步,确定if条件: 如果钱包money的值>=1000, 就执行冒号后的下一行命令。
-
第三步,用print =()命令打印出结果, 你去吃日料吧,带上钱,带上女朋友。
-
- 缩进
- 切记满足条件的输出结果前要有缩进.,缩进是四个空格或一个Tab键
- 被缩进的所有内容被称为if语句内的代码块
- 表示: 如果满足if条件,计算机就会执行if语句内的代码块。(缩进的所有内容)
二、双向判断:if…else…
- 如果满足if的条件,则执行if代码块内内容;若不满足if的条件,则执行else代码块内内容
- if后须跟随条件,并加英文冒号:
- else后不用跟随条件,加英文冒号:
# 为钱包赋值
# 条件:如果有1000块钱以上(包含1000块),就去吃日料
if money>=1000:
print('金刚狼带凤凰女去吃日料')
# 条件:当不满足if条件,执行else条件下语句
else:
print('金刚狼带凤凰女去吃KFC')
# 赋值语句:为体重赋值
weight = 98
# 条件:满足体重超过90(包含90)
if weight>=90:
# 结果:显示‘跑步’的结果
print('她就每天去跑步')
# 条件:当赋值不满足if条件时,执行else下的命令
else:
# 结果:显示‘散步’的结果
print('她就每天去散步')
三、多向判断
- 多向判断的语句为:if…elif…else
- if后须跟随条件,并加英文冒号:
- elif后须跟随条件,并加英文冒号:
- else后不用跟随条件,加英文冒号:
# 为钱包赋值
money = 999
# 条件:如果有1000块钱以上(包含1000块),就去吃日料
if money>=1000:
print('金刚狼带凤凰女去吃日料')
# 条件:如果有800-1000块钱之间(包含800块)
elif money>=800:
print('金刚狼带凤凰女去吃披萨')
#不满足条件
else:
print('金刚狼带凤凰女去吃KFC')
-
执行步骤:
-
第一步,第一行赋值,会自上而下的顺序挨个试一遍,看自己满足哪个条件?
-
第二步,满足哪个条件,就执行哪个条件里面对应的代码块,不满足条件就继续往后试,试出结果为止。
-
# 如果加班时间超过10点(包含10点),小K就打车回家;如果加班时间在8点-10点之间(包含8点),小K坐地铁回家;如果加班时间早于8点,小K骑单车回家。
# 为时间赋值
time = 9
# 条件:如果超过10点,打车回家
if time>=10:
print('小K打车回家')
# 条件:如果在8点-10点之间
elif time>=8:
print('小K坐地铁回家')
#条件: 早于8点
else:
print('小K骑单车回家')
四、if嵌套
-
例:在X战警团队里,每个人都是有段位的, 而段位是根据这个队员在团队的贡献值来确定的,金刚狼的贡献值有860。 请你写出一段代码,判断金刚狼的段位,代码需要满足如下条件:
1、如果贡献值大于等于600,显示“特种作战人员”,在此前提下:
a.如果贡献值大于等于800,显示“王者”。
b.如果贡献值小于800,显示“黄金”。2、如果贡献值小于600,显示“普通作战人员”,在此前提下:
c.如果贡献值大于400,显示“白银”。
d.如果贡献值小于等于400,显示“青铜”。
contribution=860
if contribution>=600:
print('特种作战人员')
if contribution>=800:
print('王者')
else:
print('黄金')
else:
print('普通作战人员')
if contribution>400:
print('白银')
else:
print('青铜')
print('结束')
-
if中嵌套了代码块1,else中嵌套了代码块2,在计算机中的执行顺序如下:
(1)先给contribution赋值。
(2)因为if与else是二选一的关系, if和else中的代码只会执行一个,要么执行代码块1,要么执行代码块2; contribution=860满足if(contribution>=600)的条件,就进入代码块1中进行执行,执行print(‘特种作战人员’)。
(3)进入到代码块1, contribution=860去尝试代码块1中的条件,满足 contribution>=800的条件,只能去执行代码块1中的if,执行print(‘王者’)。
(4)执行print(‘结束’)。
-
原则:
- 根据缩进来判断层级
- 根据层级来按行执行
- 根据值来判断是否满足条件,满足则执行条件下的代码,不满足则进入下一个判断
五、总结
六、练习
- 请你写出一段代码, 在金刚狼的X战警团队只有两个人的情况下,进行条件判断,并产生对应的结果。
1、如果团队人数大于4人,输出结果打败死侍他们。
2、如果团队人数是2-4之间,输出结果两败俱伤。
3、如果团队人数小于2,输出结果被死侍碾压需要请求复仇者支援。
# 第三节课
num = 2
if num>4:
print('打败死侍他们')
elif 2<=num<=4:
print('两败俱伤')
elif num<2:
print('被死侍碾压,需要请求复仇者联盟资源')
- 金刚狼拥有快速自愈能力,他想把这个能力赋予给其他人。根据他的条件,他制定了如下规则。
1、如果身体体能指数energy大于等于80,就是容易改造,在此前提下:
a) 如果身体体能指数大于等于90,1小时改造完毕。
b) 如果身体体能指数大于等于80,1天改造完毕。
2、如果身体体能指数小于80,就是不易改造,在此前提下:
a) 如果身体体能指数小于60, 改造不了。
b) 如果身体体能指数大于等于60小于80,希望渺茫。
那么像魔女,她的身体体能指数有65,能否改造呢?
energy = 65
if energy >=80:
print('容易改造')
if energy >=90:
print('1小时改造完毕')
else:
print('1天改造完毕')
else:
print('不易改造')
if energy >=60:
print('希望渺茫')
else:
print('改造不了')
-
题目:
if a == “b”:
print(“成功1”)
elif b = “c”:
print(“成功2”)
elif:
print(“成功3”)
请修改以上错误代码成功打印 print(“成功1”),并举出错误原因
# 第三节课练习,修改后的代码: a ="b" if a == "b": print("成功1") elif b == "c": print("成功2") else: print("成功3")
-
题目:
周杰伦
1 . 定义一个字符串变量a = “周”(你名字中的姓),if 判断是否全等于你的全名“周杰伦”,满足输出:验证成功123,不满足条件输出:验证失败123,
2 . 不满足条件(else)则使用字符串拼接将变量a 和你的名字拼接“杰伦”,再次判断是否全等于你的全名“周杰伦”,满足输出:验证成功,否则:验证失败
# 第三节课练习 a = "周" if a == "周杰伦": print("验证成功123") else: print("验证失败123") if a+"杰伦" == "周杰伦": print("验证成功") else: print("验证失败")
-
题目:
-
input输入你的学生编号,判断大于等于100并小于200则输出: 你是三班学生 ,小于等于50输出:一班学生,大于50并小于100输出:你是二班学生 ,不满足任何条件输出:你被开除了
-
判断学生编号大于等于100并小于200同学判断大于150输出为:优等生,全等于150输出为:班主任,其余情况输出为:差等生
-
#第三节课练习
num=int(input("输入你的学生编号:"))
if 100<=num<200:
print('你是三班学生')
if num>150:
print('优等生')
elif num==150:
print('班主任')
else:
print('差等生')
elif 50<num<100:
print('你是二班学生')
elif num<=50:
print('你是一班学生')
else:
print('你被开除了')