设为首页收藏本站

Crossin的编程教室

 找回密码
 立即加入
查看: 34312|回复: 4
打印 上一主题 下一主题

【Python 第11课】 逻辑判断

[复制链接]

174

主题

45

好友

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

跳转到指定楼层
楼主
发表于 2013-9-13 19:59:30 |显示全部楼层 |倒序浏览

之前粗略地提到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看看你想的对不对:

b

not b

a == b

a != b

a and b

a or b

1<2 and b==True


#==== Crossin的编程教室 ====#
微信ID:crossincode
论坛:http://crossin.me
QQ群:156630350

面向零基础初学者的编程课
每天5分钟,轻松学编程




#==== Crossin的编程教室 ====#
微信ID:crossincode
网站:http://crossincode.com
回复

使用道具 举报

174

主题

45

好友

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

沙发
发表于 2014-6-1 14:44:13 |显示全部楼层
mihchaelli 发表于 2014-6-1 07:16
print 输出的值必须是bool的类型 或者 “”么?

不是,几乎所有东西都可以被print输出,只不过输出来的形式不一样
#==== Crossin的编程教室 ====#
微信ID:crossincode
网站:http://crossincode.com
回复

使用道具 举报

174

主题

45

好友

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

板凳
发表于 2015-9-1 17:43:42 |显示全部楼层
你让我好慌张 发表于 2015-9-1 16:04
难道我就是那个百年一遇的编程奇才?请老师招安我

#==== Crossin的编程教室 ====#
微信ID:crossincode
网站:http://crossincode.com
回复

使用道具 举报

174

主题

45

好友

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

地板
发表于 2016-4-22 11:08:06 |显示全部楼层
Killuia 发表于 2016-4-21 16:09
貌似我的逻辑都有一定能力,看之前的代码都暂时可以理解到意思,但就系之前的习题独自做不出,要参考过才可 ...

这其实还是写得不够多,熟能生巧

注释就直接和代码一起保存啊
#==== Crossin的编程教室 ====#
微信ID:crossincode
网站:http://crossincode.com
回复

使用道具 举报

174

主题

45

好友

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

5#
发表于 2021-8-10 23:15:25 |显示全部楼层
cheer 发表于 2021-8-10 16:20
完蛋,卡壳了!还是不懂bingo在这里有什么用!这还学的下去吗

把bingo想象成一个开关(这个词中文意思是“猜中”)
循环的条件是这个开关是关着的
猜中了,就把这开关打开,循环就结束了
#==== Crossin的编程教室 ====#
微信ID:crossincode
网站:http://crossincode.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即加入

QQ|手机版|Archiver|Crossin的编程教室 ( 苏ICP备15063769号  

GMT+8, 2024-5-5 16:36 , Processed in 0.021082 second(s), 24 queries .

Powered by Discuz! X2.5

© 2001-2012 Comsenz Inc.

回顶部