Skip to main content
 首页 » 编程设计

Python 为什么 int ("0") 返回 false

2025年05月04日11mengfanrong

我正在尝试学习 Python,但终其一生都无法弄清楚为什么会这样:

i = raw_input("enter a number") 
 
if int(i): 
    print "yes" 
else: 
    print "false" 

如果 i == "0"则不会返回 true

背景: 我正在尝试实现联合查找算法。一切正常,但是当我尝试连接两个点并且一个点为 0 时,它不会让我通过控件。 ( python 2.7)

请您参考如下方法:

Python 类型具有 bool 值,在 special methods 中定义.特别是,0、None、False、""(以及任何其他空序列)都是 false。

显然,

>>> int("0") 
0 

此外,False 的值为 0,True 的值为 1,对于大多数用途(除了它们表示为字符串,以及它们的 类型,即bool):

>>> 0 == False 
True