【转载】用手机插头的思路学习「布尔运算符」 | 亲子课堂 第 14 课
森林
地牢里的关卡主要是偏向锻炼用户的基本语法结构和计算机思维,让大家熟悉极客战记的操作与代码的使用。
来到了森林,关卡将会变得更多更难,同样,到了森林,大家就正式开始接触编程的几大重要知识点:
条件判断
运算符
函数
对象属性
平常的一天
关卡简介:
「平常的一天」本关涉及了一个新的知识点:and(与),属于逻辑运算,在逻辑运算相关的关卡中,许多注释都开始变得像阅读理解一样,需要细致阅读,才能理出相应的条件。
通关展示:
思路讲解
本关依旧是需要根据注释完善代码,涉及到的新知识点「and」已经在第7行中为我们进行了示范。
知识点:逻辑运算——与「and」
通过刚刚图中第7行的实例发现,「与运算」它是被放在if后面,当作条件来使用的。
像加减乘除,这些算术运算符,运算所得的结果,都是一个数值,因此我们可以猜测,逻辑运算也会有运算的结果,而这个结果并非数值,而是条件的结果。
想想看,if条件都能有哪些结果?
只有两个:True(真)和 False(假)
这是一个布尔类型的结果,叫做布尔值。
布尔是什么?
这就好比在问「数」是什么?数字类型的结果叫数值,所以布尔类型的值就叫布尔值,布尔就是一种类型,这种类型的结果,只有两个,也就是:True(真)和 False(假),在计算机里面,True和False还有很多种叫法:「真和假」、「对和错」、甚至是「1和0」
逻辑运算就像算术运算一样,它也能算出特定的值,也就是布尔值,通常被当作if后的条件来使用。
我们来了解一下「与运算符」的使用:
if 条件1 and 条件2:
「与运算符」能够连接两个条件,条件1和条件2。
而只有当条件1和条件2同时成立的时候,整个运算式的结果才会为True;
所以,「与运算符」又有另一个名字「且」
因此,第七行的代码,我们还可以这么解读:
只有当敌人存在 且 敌人的类型为食人魔时,英雄才发起攻击。
如果条件1和条件2中,有任何一个条件不成立,则整个运算式的结果就会是False。
这就像一条充电线,哪个头没插好,你的手机就充不了电,必须插座那一头插好,手机插口那一头也要插好。
除了「与运算符」还有另一个逻辑运算服:「或运算符」or
英语好的同学们可能已经发现了,「与运算符」和「或运算符」的英文单词,恰好就是一对反义词:and 和 or —— 且 和 或
因此在作用上,「或运算符」也正好与「与运算符」相反:
if 条件1 or 条件2:
在「或运算」中,只要任何一个条件成立,那么整个运算式就能输出True。
而必须两个条件都不成立,运算式才会输出False。
所以「或运算」的代码可以这么解读:
只要 敌人存在 或 敌人类型为食人魔,那么英雄就发起攻击。
总结:「与运算符」全对才能对,「或运算符」全错才会错
此时再来看看需要填写的代码处,
首先寻找最近的物品,然后判断,如果有名为“coin”的物品存在,则进行收集。
看起来条件只是一句话,但其实隐含了两个条件:如果物品存在,且名为“coin”,才让英雄进行收集。
因此我们可以在此处使用上「与运算符」,另外还需要注意,物品的名字并非name,而是参考上方第七行代码,使用type,通关代码如下。
通关代码
以上便是森林关卡「平常的一天」的过关教学了~
本攻略发于极客战记
极客战记——学编程,用玩的!