朋友python多个逻辑条件判断_Python小课笔记--Python控制流:if逻辑判断

截图来自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 < 6:

print('收5元')

elif a < 60:

print('收20元')

else:

print('不收费')

说明:不同年龄段收不同的门票,其实是并列的三种情况,所以是比较适合使用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 < 18.5:

print('过轻')

elif BMI < 24.0:

print('正常')

elif BMI < 28:

print('过重')

else:

print('肥胖')

小结:

1、if的条件后面有冒号,elif的条件后面有冒号,else后面也有冒号;

2、if内部语句、elif内部语句,和else内部语句都是要缩进四个空格;

3、括号、冒号、单引号切记是英文状态下的输入;

4、相关数据类型的转换嵌套设置。

(注:2018.10.14,Python编程,捡破烂儿的笨小孩学习小记,有用就给个小心心哟,后续持续更新ing)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值