首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Python转换int <=> bool

Python转换int <=> bool
EN

Stack Overflow用户
提问于 2021-05-07 02:40:29
回答 1查看 158关注 0票数 0

它在REPL中

代码语言:javascript
运行
复制
>>> 1 == True
True
>>> 2 == True
False
>>> 3 == True
False
>>> -1 == False
False

代码语言:javascript
运行
复制
if 3:
  print('yes') #prints yes

if not -1:
  print('yes') #prints nothing

为什么在使用-语句时,正整数不被计算为真,而在if-语句中被计算为真? 2)为什么在使用==时,负整数不被计算为False,但在if-语句中也不被计算为假?最基本的规则是什么,写在哪里?

EN

回答 1

Stack Overflow用户

发布于 2021-05-07 02:55:28

除0以外的每个整数都计算为True。REPL给出的结果与if语句不同的原因是,您没有计算相同的表达式。

在您的REPL中,您是在询问is A equal to B。这只适用于False == 0True == 1。在您的代码中,您没有进行比较。您只是在检查变量是否可以被视为“空/不存在”(可以这么说)。

简言之:

if a == True:if a:不是一回事。

如果有帮助,你可以这样看待它:

if changeForADollar == myChange:if anyChangeAtAll:

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67428330

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档