啊,不知不觉,我们的Python教程已经步入了第八课,我们的大量低级算法都已经学了一点。不过,这节课,似乎有点不太一样。
有什么不一样?快来看看BA!
符号呢我们之前学习了好多,比如加减乘除这些的,还有整除和取余。这一次,我们会学习更加深入的语法内容。
首先,我么要复习一下这两个简单符号,它们分别是“大于”和“小于”。在数学中,我们用大于号和小于号连接“不等式”。
用法贼简单,5()2?简单,5>2;
2()5?简单,2>5.
这个符号大家会叫它什么呢?等于号?No,no,no,他在Python中有一个专门的名字。叫什么?嘻嘻,卖个关子。
我们先来看一下之前我们接触过的一段代码格式:
变量名 = 数值或其他
熟悉不?这就是变量的赋值。我们在两者之间发现了我们的“=”号。这里的“=”可不是等于,而是一个Python中的一个概念——赋值。所以,我们把“=”叫做“赋值符号”
有点迷糊了?别晕!难的还在后面!
前面两个符号大家可能认识,他们叫做“小于等于”和“大于等于”,意思是“n及n以上(下)”那后面那个呢?连等号?不不不,它就是我们苦苦搜寻的“等于号”,用于连接Python中的等式。
刚刚我们也说过了,一个是n及n以上,一个是n及n以下。这俩符号和上面的大于号与小于号还有==号高频出现于if语句和循环语句(while循环),这没什么考点,但是在下面的布尔型中,他们俩是重头戏。
晕了吗?他和刚刚的等于号长得差不多,却意思完全不同,而且一不小心就会用错。所以说,学好他们之间的区别是非常重要的。所以,接下来要仔细听咯!
刚刚我们也说了,=是赋值符号,而==才是名义上的等于号。大家只要记住他们应该出现在哪里就万事大吉了。
这个不难,现在我们只能在变量赋值中看到这种符号。所以,一旦大家在if语句、后面的循环判断语句以及print函数判断T F的语句中看到它,请一定要提高警惕!
这可多了去了。我们在if语句的第二学习阶段中还有待会要讲的布尔型数据判断中会经长用到TA。反之,一旦在变量赋值时看到TA,请务必要改为“=”!
鸡汤喝完了,接下来就是磨鸡骨头~
小明参加了本市的口算大赛。请你帮他用Python完成下面的题目,并正确输出结果。
1. 23是否等于24?
2. 23万是否等于45万?
3. 234567543456765432456432是否等于390548390589340589034?
4. 2323752990538万是否等于9304908亿?
等于的话,输出“相等”;不等于的话,判断大于或小于,再分别输出“大于”和“小于”。
酝酿了好久的布尔型数字符来咯!
大家在做英语阅读的时候有没有碰到过一种题叫做“阅读短文,判断正(T)误(F)”?嘿嘿,我们的布尔型就是TF的全拼。话不多说,上单词!
这就是正(T)中的“T”。全拼就是上面的ture。翻译成汉语就是正确的,真实的。
在Python中咋判断正误?灰常简单,就是“什么大于或小于什么”成不成立。
false相反,对应了误(F)的“F”。翻译成汉语就是虚假的,错误的。
接下来,我们就来用实操来验证一下这两个符号
打开我们沉睡许久的IDLE,输入如下指令,看看会发生什么~
>>> 5>2
>>> 6>2
>>> 6 == 6
>>> 5 < 2
>>> 2 <= 2+3
>>> 5 >= 5
你们的运行结果应该是这样吧?所以,你们知道这两个符号的相同与不同吗?
有的同学会疑惑:怎么print和布尔扯上了?别急,先来看2个例子
这根上面的,除了加了个print,其他没啥区别。但我要讲的可不是这种,接下来才是我的重头戏——
看到这个例子,大家可能蒙了:怎么多了个叫做and和or的东西?嘻嘻,别晕!我给大家
好好讲讲~~
and,英文单词,和,与,又。不过它在Python中,大同小异。
and在英语中表并列,在Python中表示“同时满足”。大白话说,就是and左边和and右边都要满足(也就是尽量都是Ture)。一旦有一个不是True,那不好意思,直接送你False输出。看看,and有多严格~
or,英文单词,或者。它在Python中意思差不多,表示“满足任意一点则满足”。与and相反的就是它了。也不能说相反吧,or比较得“仁慈”,只要or的任意一边是“True”,那程序就会输出“True”。怎么样,是不是很神奇?
我接下来扔给大家几段代码,大家浅浅判断一下
print(3 > 2 and 5 > 2)
print(2 > 3 and 5 > 2)
print(2 > 3 or 5 > 2)
print(2 > 3 or 2 > 5)
嘿嘿,别晕,我来教大家怎么判断。
第一行:print(3 > 2 and 5 > 2)
有and的非常简单,我们只要用“找茬法”。看看这两边,一个错的都没有!!
所以,这个只能无奈输出‘True’。
第二行:print(2 > 3 and 5 > 2)
这道题so easy啦,左边损失惨重,直接无脑输出False
第三行:print(2 > 3 or 5 > 2)
or的话也是找茬,不过是找“对”。这两个里虽然有个是错的,但是不代表都是错的,右边的True直接啪啪打脸。这道题也是无奈输出“True”
第四行:print(2 > 3 or 2 > 5)
这道题有意思了,两边一个都不对,or的宽容大度也救不了你。所以……不好意思,False!
今天的内容虽然很基础,但干货很多,大家好好消化。对了,为啥今天习题这么少?因为布尔型习题实在是太难了!
我讲解这两样内容,是为了后面的if语句(进阶)以及while语句做铺垫。所以……大家不要偷懒,好好看完~~~~
最后,制作不易,别忘了一圈三连,点个关注哟!拜拜!
虽然今天习题少,但是可以很好地复习我们所学的内容。所以……准备好了吗?对答案时间现在开始!
1.1.1 TK
小明参加了本市的口算大赛。请你帮他用Python完成下面的题目,并正确输出结果。
1. 23是否等于24?
2. 23万是否等于45万?
3. 234567543456765432456432是否等于390548390589340589034?
4. 2323752990538万是否等于9304908亿?
等于的话,输出“相等”;不等于的话,判断大于或小于,再分别输出“大于”和“小于”。
if 23 == 24:
print("相等")
else:
if (23 > 24):
print("大于")
else:
print("小于")
if 230000 == 450000:
print("相等")
else:
if (230000 > 450000):
print("大于")
else:
print("小于")
if 234567543456765432456432 == 390548390589340589034:
print("相等")
else:
if (234567543456765432456432 > 390548390589340589034):
print("大于")
else:
print("小于")
if 23237529905380000 == 930490800000000:
print("相等")
else:
if (23237529905380000 > 930490800000000):
print("大于")
else:
print("小于")
你做对了吗?