概述
截图来自Python小课
文|仟樱雪
在Python小课-1-2-3节中,我们已经学习了基础模块--数据--数据类型(整数、字符串、浮点数),以及基础模块--变量,基础模块--函数(input函数、print函数,type函数,len函数,str函数,int函数,flost函数)。
本节开始学习控制流中的“条件判断”
截图来自Python小课
条件判断,就是——“让计算机在合适的情况下做合适的事。
计算机是一个超级听话的仆人,坚决服从你的每一行指令。可它不会主动提出要帮你做什么事情,除非你把规则都制定好
Python小课--条件判断的学习,主要是以女儿国国王的烦恼作为案例介绍。
1、烦恼1::如果今晚下雨,那就说明女王和唐三藏合适,可以在一起。
在Python中,实现:weather = input('请回答:今晚下雨or没下雨')if weather == '下雨': print('女王和唐僧可以在一起。')
运行结果:
本地Python环境运行
说明:输入了下雨的答案之后,会出现如上结果,如果输入了“不下雨”,那程序就什么都不会执行。因为这不满足下一行代码的要求!
==,该符号表示【左右两边的内容相等】;
第1行代码:用input() 函数请用户输入今晚下雨or没下雨,并将结果赋值给weather(英文,天气)。
第2行代码:开始使用if语句,如果变量weather等于下雨。
第3行代码:那就打印--女王和唐僧可以在一起。这是属于if内部的语句,要缩进四个空格。
if语句的逻辑语法:if ...(条件):
...(做点儿什么)
...(做点儿什么)
...(if语句的外部命令)
(1)if 后面跟的是一个条件。当条件为真时,就执行内部缩进的命令(做点儿什么),数量不限;如果条件为假,不管,跳过if,去执行if语句的外部命令。
(2)注意了哈!if 的条件后面有一个英文的冒号【:】,很容易被漏掉;(做点儿什么)都属于if内部的命令,所以要缩进4个空格。
(3)当if后面的条件为假时,不会一行一行向下执行了,而是跳过if的内部代码,去执行if语句的外部代码了。
2、烦恼2:今晚有月亮吗?如果有,那就打印:女王和唐僧可以在一起。
在Python中,实现:weather = input('请回答:今晚有月亮or没有月亮?')if weather == '有月亮': print('我和唐僧可以在一起。')
运行结果:请回答:今晚有月亮or没有月亮?有月亮
我和唐僧可以在一起。
说明:输入了有月亮的答案之后,会出现如上结果,如果输入了“没有月亮”,那程序就什么都不会执行。
3、烦恼3:如果唐僧接受了表白,很好,马上举行婚礼,全国放假;如果唐僧没有答应的话,把唐僧软禁起来,从长计议,毕竟唐僧所处的行政区域正是女王管辖的领土,大唐的皇帝也管不到这么远。
在Python中,实现:answer = input('唐僧接受了表白吗?请回答有or没有?')if answer == '有': print('很好,马上举行婚礼,全国放假')else: print('把唐僧软禁起来,从长计议')
运行结果:唐僧接受了表白吗?请回答有or没有?没有
把唐僧软禁起来,从长计议
说明:输入了"没有"之后,会出现如上结果,如果输入了“有”,则输出“很好,马上举行婚礼,全国放假”。
此处多了一个【else:】这个单词的意思是——否则、其他,还有两个冒号。
if...else...的逻辑语法:if...(条件):
...(做点儿什么)
...(做点儿什么)else:
...(干点儿别的)
...(干点儿别的)
(1)if 后面跟的是一个条件,当条件为真时,执行 if 下面的(做点儿什么)命令,当条件为假时,跳到else: ,然后开始执行else: 下面的命令。
(2)if 下面的代码要缩进四个空格,代表的是if内部的功能,所以要缩进。else下面的代码同样要缩进四个空格,代表的是else内部的功能。这都是为了方便我们看代码。
(3)尤其要注意的是,if后面的条件后面要跟英文冒号【:】,还有else后面,也要跟英文冒号【:】。
截图来自Python小课
练习1:
请用 if...else... 完成这样一个程序:
0,请用户输入一个整数;
1,然后如果这个整数大于10,就打印(整数-20)的结果;
2,否则,就打印(整数+20)的结果
Python操作:a = int(input('请输入一个整数:'))if a > 10: print(a-20)else: print(a+20)#第1行代码:使用int()函数是为了让字符串转换为整数,这样才能进行a-20和a+20的计算。#第2、3行代码:如果这个整数大于10,就打印(a-20)的结果;否则,就跳到第四行代码。#第4、5行代码:当这个整数不满足大于10的条件时,打印(a+20)的结果。
4、烦恼4:女王跟唐僧表白心迹之后,根据唐僧的反应情况,出具三种措施:
唐僧,明确接受,则成婚;明确拒绝,则软禁;其他反应,容后再议。
在Python中,实现:a = input('''
唐僧的反应是什么?
1.明确接受
2.明确拒绝
3.其他反应
请输入数字>
''')if a == '1':
print('成婚')elif a == '2':
print('软禁')else:
print('容后再议')
运行结果:唐僧的反应是什么?
1.明确接受
2.明确拒绝
3.其他反应
请输入数字>
3
容后再议
说明:输入了3之后,会出现如上结果,如果输入了“2”,则输出“软禁”’,输入1,则输出“成婚”。
又多了一个【elif】,【elif】其实是else if 的缩写,代表否则如果。
第1-7行代码,都是在获取数据,即唐僧的选择到底是哪个。三引号可以帮助字符串实现换行。
第8、9行代码:如果变量 a 和 '1' 相等,即唐僧明确接受,那么就显示--成婚。
第10、11行代码:如果变量 a 和 '2' 相等,即唐僧明确拒绝,那么就显示--软禁。
第12、13行代码:如果上面两种都不是,即唐僧有其他反应,那么就显示--容后再议。
这里有3种情况,所以使用了一次elif,如果有四种情况,可以使用两次,这视代码的实际情况而定。
elif的使用逻辑:if...(条件1):
...(做点儿什么)elif...(条件2):
...(做点儿其他的)elif...(条件3):
...(做点儿其他的)else(其他):
...(干点儿别的)
(1)if后面跟的是一个条件,当此条件为真时,执行if下面的(做点儿什么)命令,然后结束条件判断;当条件为假时,跳到elif。
(2)elif后面跟的是另一个条件,当此条件为真时,执行elif下面(做点儿其他的)命令,然后结束条件判断;当此条件为假时,跳到第二个elif:
(3)elif后面跟的又是一个条件,当此条件为真时,执行elif下面(做点儿其他的)命令,然后结束条件判断;当此条件为假时,跳到else那里,去执行else下的命令。
******************警示:if的条件后面有冒号,elif的条件后面有冒号,else后面也有冒号。同样的,if内部语句、elif内部语句,和else内部语句都是要缩进四个空格*************************************************
练习题1:
熊猫博物馆的门票有三种,当游客的年龄小于 6 岁时,收5元;当游客的年龄大于等于6岁,而小于60岁时,收20元;当游客的年龄大于等于60岁时,不收费。请你写出一个程序,当游客输入自己的年龄后,可以打印出这位游客该收多少钱的门票。
Python实现:a = int(input('请输入你的年龄:'))if a
说明:不同年龄段收不同的门票,其实是并列的三种情况,所以是比较适合使用if...elif...else的。
第1行代码:是为了获取游客的年龄信息,并把字符串的数据类型转换为整数。
第2、3行代码:小于6岁的游客,属于游客中的第一区间,收费5元。如果是大于等于6岁的游客,跳到elif。
第4、5行代码:在大于等于6岁的游客中,如果小于60岁,那么属于第二区间,收费20元。在大于等于6岁的游客中,如果不满足elif后面的条件,即大于等于60岁,跳到else。
第6、7行代码:大于等于60岁的,属于游客中的第三区间,不收费。
5、课后练习
(1)【背景】
最近,派大星想要减肥,他决定控制自己的饮食,少吃一点蟹黄堡。
海绵宝宝为了帮助好朋友派大星,和派大星一起制定了一个饮食游戏。
游戏规则如下:
如果派大星一天吃超过40个蟹黄堡,就要给海绵宝宝100块;
如果派大星一天吃小于等于40个的蟹黄堡,海绵宝宝就给派大星100块。
【题目】
请你写出一段代码:
当输入派大星一天吃的蟹黄堡数量时,可以打印出这天该派大星给海绵宝宝钱,还是海绵宝宝给派大星钱。
Python操作:num=int(input('请问:您一天吃的蟹黄堡的数量:'))if num >40: print('给海绵宝宝100元')else: print('海绵宝宝需给您100元')
(2)【背景】
我知道,在许多时候,恋人是由朋友发展而成的。而这个过程,可以用代码来做演示。
不信?听我讲。
首先判断:两人的关系是不是达到了【朋友之上,恋人未满】?
如果不是,那么输出:进度条还不够,再等等。程序终结。
如果是,那么再判断:你是不是想和对方有进一步的发展?
如果不是,那么输出:还是做朋友吧。程序终结。
如果是,那么再判断:对方是不是想有进一步的发展?
如果不是,那么输出:恭喜获得“好人卡”。
如果是,那么输出:恭喜你们,有情人终成眷属!
Python实现:#在许多时候,恋人是由朋友发展而成的,下面让我们来做个恋爱告白测试:num1 = input('请问:你们的关系目前是进入暧昧阶段了吗?请回答:是or不是 ')if num1 == '不是': print('革命尚未成功,同志仍需努力啊!')elif num1 == '是':
num2 = input('感情刚好,你希望你们的关系更进一步吗?请回答:是or不是 ') if num2 == '不是': print('那就点到即止吧,朋友一生一起走~') elif num2 == '是':
num3 = input('那TA呢,想再进一步吗?请回答:想or不想? ') if num3 == '不想': print('恭喜你,获得千年单身卡,好人一生平安!') else: print('恭喜!有情人终成眷属,命中注定在一起!')
(3)BMI指数是一个国际上常用的衡量人体胖瘦程度,以及是否健康的指数。
它的计算方式如下:
BMI = 体重 ÷(身高×身高)
比如一个体重50kg,身高160cm的人,BMI = 50 ÷(1.6*1.6)=19.5
对照BMI的表格:
截图来自Python小课
Python语句实现:weight = float(input('请输入您的体重(单位:kg): '))
high = float(input('请输入您的身高(单位:cm): '))
BMI = weight / ((high / 100) * (high / 100))if BMI
小结:
1、if的条件后面有冒号,elif的条件后面有冒号,else后面也有冒号;
2、if内部语句、elif内部语句,和else内部语句都是要缩进四个空格;
3、括号、冒号、单引号切记是英文状态下的输入;
4、相关数据类型的转换嵌套设置。
作者:仟樱雪
链接:https://www.jianshu.com/p/2322e66e251c
最后
以上就是虚幻芹菜为你收集整理的python实现三种以上判断条件_Python小课笔记--Python控制流:if逻辑判断的全部内容,希望文章能够帮你解决python实现三种以上判断条件_Python小课笔记--Python控制流:if逻辑判断所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复