下载安卓APP箭头
箭头给我发消息

客服QQ:3315713922
论坛 >产品运营 >【Python 课堂】第18课—— bool类型转换

【Python 课堂】第18课—— bool类型转换

好汉发布于 2015-10-18 22:37查看:715回复:10


昨天最后留的几句关于bool类型的转换,其中有一行:
   bool('False')
print一下结果,会发现是True。这是什么原因?
 
因为在中,以下数值会被认为是False:
   为0的数字,包括0,0.0
   空字符串,包括'',""
   表示空值的None
   空集合,包括(),[],{}
其他的值都认为是True。
 
None是python中的一个特殊值,表示什么都没有,它和0、空字符、False、空集合都不一样。关于集合,我们后面的课程再说。
 
所以,‘False’是一个不为空的字符串,当被转换成bool类型之后,就得到True。
同样bool(' ')的结果是True,一个空格也不能算作空字符串。
bool('')才是False。
 
在if、while等条件判断语句里,判断条件会自动进行一次bool的转换。比如
   a = '123'
   if a:
       print 'this is not a blank string'
 
这在编程中是很常见的一种写法。效果等同于
if bool(a)
或者
if a != ''
 
文章来源于Crossin,由课课家平台整理,转载请注明。

收藏(0)0
查看评分情况

全部评分

此主贴暂时没有点赞评分

总计:0

回复分享

共有10条评论

  • IT宅男
  • mr jack
  • Mr ken
  • YUI
  • cappuccino
  • 课课家技术团队1
  • 选择版块:

  • 标题:

  • 内容

  • 验证码:

  • 标题:

  • 内容

  • 选择版块:

移动帖子x

移动到: