设为首页收藏本站

Crossin的编程教室

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

关于if的判断条件

[复制链接]

1

主题

0

好友

29

积分

新手上路

Rank: 1

跳转到指定楼层
楼主
发表于 2013-11-3 15:47:23 |显示全部楼层 |倒序浏览
本帖最后由 java007 于 2013-11-3 15:55 编辑

Crossin老师 Pyer们 我初学python 碰到一个问题 想请教各位
pyhthon第7课里Crossin老师提到这个 如图thisIslove

我输的程序如图p1
运行结果 如图r1
1)输入True打印 do not leave
2)输入False不打印
3)输入某字符 比如'q' 打印 do not leave

而我认为 输入除True,False之外的其他字符时,应该也不打印才对。否则容易造成错误判断。

此问题来源于这段程序,如图p2

灰色那一行是错的,下一行是对的。
原因就在于这一句是对 '傻' 这个字符以及'聪' not in a这两个句子的判断。
输入 傻,会打印第一个if和第三个if的两行结果。

综上,我的问题是对于那个例子,为什么输入随便一个字符会相当于输入True?

thisIslove.PNG (10.54 KB, 下载次数: 320)

thisIslove

thisIslove

p1.PNG (2.09 KB, 下载次数: 312)

p1

p1

r1.PNG (5.86 KB, 下载次数: 311)

r1

r1

p2.PNG (7.91 KB, 下载次数: 314)

p2

p2

回复

使用道具 举报

1

主题

0

好友

29

积分

新手上路

Rank: 1

沙发
发表于 2013-11-3 15:52:28 |显示全部楼层
边看教程边等回复
回复

使用道具 举报

1

主题

0

好友

29

积分

新手上路

Rank: 1

板凳
发表于 2013-11-3 23:23:18 |显示全部楼层
意思是把除False以外的输入都当作True?
不太明白“是否非零”是啥意思。能再解释一下吗?谢谢。
回复

使用道具 举报

1

主题

0

好友

29

积分

新手上路

Rank: 1

地板
发表于 2013-11-4 11:04:44 |显示全部楼层
crossin先生 发表于 2013-11-3 23:53
对于其他类型的值,除了0,空字符,空集(如(),[],{}),其他值转换成bool值都是True。
其实这个在后面的 ...

哦,是这样啊。谢谢。
后面的课程还没看到,不好意思。嗯,我会注意这个的。
已加入笔记。MIT.
回复

使用道具 举报

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

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

GMT+8, 2024-5-18 19:01 , Processed in 0.018044 second(s), 25 queries .

Powered by Discuz! X2.5

© 2001-2012 Comsenz Inc.

回顶部