课程首页 › 第4章 › 第21课

第21课 满足一个条件用or

第4章 如果,那么大学问· 知识点:逻辑运算 · 原书 4.8

在上面的程序中,我们分别选择了蓝色和黄色:

(1)程序执行第一个条件判断if color=="蓝色红

"and mColor=="

色",条件判断表达式的结果值为False。

(2)程序执行第二个条件判断elif color=="蓝色黄

"and mColor=="

色",条件判断表达式的结果值为True,输出“蓝色+黄色=绿色”。

(3)程序忽略后面的elif和else,跳回主程序,程序结束。

插图

体验游戏:幸运大转盘。转盘上有9个数字,分别是1、2、3、4、5、6、7、8、9,只要指针对准5或9,就可以获奖。

通过程序要怎么实现呢?

插图

程序运行结果如下:

请输入指针对准的数字:5

恭喜你,你中奖了!

在上面的程序中,当指针对准5时,条件判断if num==5的结果为True;当指针对准9时,条件判断if num==9的结果为True,只要其中一个条件判断为True,就能中奖。在Python中,or关键字能帮助我们简化上面的代码,or是表示“或”的逻辑运算符。

插图

程序运行结果如下:

请输入指针对准的数字:9

恭喜你,你中奖了!

在上述程序中:

(1)当我们输入的num=9时,执行if语句,此时条件判断表达式num==5的结果值为False,num==9的结果为True。我们使用了or关键字,只要任意一个条件判断表达式的结果值为True,就能执行if中的代码块,所以此时输出“恭喜你,中奖了!”。

插图

(2)当我们输入的num=5时,执行if语句,此时条件判断表达式num==5的结果值为True,而条件判断表达式num==9的结果值为False。我们使用了or关键字,只要任意一个条件判断表达式的结果值为True,就能执行if中的代码块。所以此时输出“恭喜你,中奖了!”

插图

(3)当我们输入的num=10时,执行if语句,此时条件判断表达式num==5的结果值为False,条件判断表达式num==9的结果值也为False。我们使用了or关键字,只有or两端的两个条件判断表达式都为False时,才会执行else中的语句。所以,此时输出“谢谢光临!”。