如果你之前看过其他教程,但是发现云里雾里复杂的让你头晕眼花的话,没错,看这里,本系列Python教程专为啥都不会的新手用户打造,放宽心,大胆看,我就是说说书,你就当听听故事,轻松愉快走进编程的大门,“程序设计”不再神秘也不再遥不可及。只要你会最基本的电脑操作(装装软件打打字),读过那么几天书,汉字都认识,英文会那么一点点就够了,包学包会!Let’s go!
【本节目录】
“条件判断”是程序设计里面一个比较基本的知识点,它很简单易懂,接下来,开始真正的0基础学习“条件判断”的精髓。
首先讲一个非常非常简单的例子。已知有一个不透明的盒子,里面有3块积木,一块是蓝色立方体形状的,一块是红色球形的,还有一块是黄色圆锥体形状的。现在从里面随机取出一块积木,让你闭上眼睛去摸它,然后说出它的颜色。这个很简单就可以做到,对吧?
虽然你不能用眼睛去观察积木的颜色,但是通过用手摸积木的形状,根据已知条件,就足够判断出这块积木的颜色了。有如下3种可能性:
① 如果是立方体形状,那么就是蓝色的;
② 如果是球形的,那么就是红色的;
③ 如果是圆锥体形状,那么就是黄色的。
这就是一个根据“条件”进行“判断”的过程。
接下来还有一个类似的事情,这次是根据“条件”来做“决策”。他们的本质是一样的。
在我们的生活当中,并不是所有的一切都能按照我们设想的路线完美的进行下去,有时候需要做一些“两手准备”,甚至是“多手准备”。比方说我们几个小伙伴打算周末一起出去游玩,为了能获得更好的游玩体验,我们可能要做一些应急预案。比如说我们考虑“天气”这个因素,如果天气“晴朗”,我们就选择去爬山;如果“下雪”,我们就选择找个室内场所玩桌游;如果遇到“台风”,那么我们就只好取消周末的活动。这就是一个做“多手准备”的案例。
我们把这个“多手准备”来分析一下,形成了三个步骤:
① 如果天气“晴朗”,那么就去爬山;
② 如果“下雪”,那么就去玩桌游;
③ 如果“台风”,那么就取消聚会。
这就是我们在生活中根据“条件”进行“决策”的过程。
※ 在程序设计里,1.1所讲的根据“条件”进行“判断”
,和1.2所讲的根据“条件”进行“决策”
,都可以表达为“如果……,就……”
或者“如果……,就是……”
。在程序设计里,这一类的操作称之为“条件判断”。
接下来就讲一下这个过程是如何实现的。
在使用Python语言进行程序设计时,我们想要对计算机发号施令,让他进行“条件判断”的操作,需要用到这样一个表述:
if AAAAA :
BBBBBBBBBB
上面这两行代码,就能进行一个“条件判断”的操作了。
这里面有这样一些要素:
第一行的要素:
① 一个关键词if
,这是必须要有的要素;
② 在if
后面,跟上一个条件
,关键词if
和条件
之间用一个空格隔开;
③ 最后是一个冒号:
,用来作为条件
部分的结尾。
第二行就是当第一行的条件
成立时,将会进行的操作。这里有个要注意的地方,就是第二行开头要比第一行多输入4个空格,也是Python语言规定的。
我们回过头来看代码,结合上面的要素说明,我们就很容易明白,里面的AAAAA
这个位置,需要放置一个用来做判断的条件
,第二行的BBBBBBBBBB
就是如果AAAAA
这个条件
成立的话,将会执行BBBBBBBBBB
这里的代码命令。
下面举一个简单的小例子:
if weather == '晴朗':
print("爬山")
这个例子中,如果在之前给weather
这个变量赋值为晴朗
的话,经过这段程序的判断,就会打印出爬山
这个结果。
如上图显示,输入代码,然后执行代码段,就能看到输出的结果了。
上面是讲了一下最简单的条件判断
,但实际环境中,如果我们需要用到条件判断
这个工具的话,往往是需要面对多个选择,也就是多个“条件”,这时候我们的结构是这样子滴:
if weather == '晴朗':
print("爬山")
elif weather == '下雪':
print("玩桌游")
elif weather == '台风':
print("取消聚会")
else:
print("再商量一下")
这段代码的功能是帮我们根据天气做一个周末怎么过的决策,也就是1.2中的那个案例。这里比前面多了一个要素,就是第3行和第5行,都是elif
开头的,并且从结构上来看,跟第1行的if
是对齐的,而当条件成立时要做的事情,则比对应的条件
那一行要多4个空格。比如第4行比第3行前面多4个空格,第6行比第5行前面多4个空格。
这个elif
其实就是else if
的缩写,这是Python语言规定的,要写成elif
,它的意思是,当前面的条件不成立时,如果……,那么就……
第7行的else
后面直接跟冒号:
,并不需要加条件
,因为上面所有条件都不满足的时候,就进入了这个分支,执行下面的命令。
上面的代码我来仔细的捋一下,意思就是说,如果天气晴朗
,那么就去爬山;如果天气不晴朗
并且下雪
了,那么就去玩桌游;如果天气不晴朗
并且也没有下雪
但是有台风
,那么就取消聚会;如果以上天气情况都不是,那么就再商量一下周末怎么过。
看下面的图:
当给变量weather的赋值是台风
时,就进入了相应的分支,执行的是print("取消聚会")
的语句,输出的结果是取消聚会
。
当给变量weather的赋值是沙尘暴
时,不满足任何一个条件
,最终进入了else
的分支,执行的是print("再商量一下")
的语句。
本节课介绍了条件判断
这个知识点。应该很简单吧?这是程序设计里的基础知识之一,也是十分常用的。这次留个小作业吧,还记得上节课讲到的列表
、元组
和字典
吧?我给出一个变量m
,比如说:
m = ('李甜甜', 465, 35.7, '来日方长', '今天天气不错。', 485647.48)
如何用程序自动判断出这个变量m
是列表
、元组
还是字典
呢?
(这里会用到我们前几节课学到的多个知识点的组合,但是并不难,可以在网上查一查资料,很容易查到的,然后试着自己写程序解决一下。也可以再试着把变量m
换成别的,看看是否能自动判断成功?)
可以把自己的代码留在评论区,作为自己学习的脚印,大家也可以互相交流讨论互相学习哈!