python学习笔记—逻辑判断

之前粗略地提到bool类型的变量,又说到if和while的判断条件。有些同学反馈说没怎么理解,为什么一会儿是bingo=False,一会又是bingo==False,一会儿是while在条件为True的时候执行,一会儿又是while在bingo==False的时候执行。别急,你听我说。
?
首先,要理解,一个逻辑表达式,其实最终是代表了一个bool类型的结果,比如:

1 < 3
这个就像当于是一个True的值

2 == 3
这个就是False


把它们作为判断条件放到if或者while的后面,就是根据他们的值来决定要不要执行。


同样的栗子再来几颗:

a = 1
print a>3 #False ?
print a==2-1 #True ?
b = 3
print a+b==2+2 #True


比较容易搞混的,是bool变量的值和一个逻辑表达式的值,比如:

a = False
print a #False
print a==False #True


虽然a本身的值是False,但是a==False这个表达式的值是True。(说人话!)“a”是错的,但“a是错的”这句话是对的。
?
回到上面那几个概念:

bingo=False
把bingo设为一个值为False的变量

bingo==False
判断bingo的值是不是False,如果是,那么这句话就是True


while在判断条件条件为True时执行循环,所以当bingo==False时,条件为True,循环是要执行的。


晕了没?谁刚学谁都晕。不晕的属于骨骼惊奇百年一遇的编程奇才,还不赶紧转行做程序员!


逻辑这东西是初学编程的一大坑,我们后面还要在这个坑里挣扎很久。
?
留个习题:a = True
b = not a #不记得not请回复6想想下面这些逻辑运算的结果,然后用print看看你想的对不对:bnot ba == ba != ba and ba or b1<2 and b==True

0 个评论

要回复文章请先登录注册