我百思不得其解,为什么-1大于0 这是我的测试程序在蟒蛇2.6.6,为什么是整数-1大于0
> cat logtest.py
def myfunc():
if -1 > 0:
return False
else:
return True
if myfunc():
print "True"
else:
print "False"
> python -V
Python 2.6.6
> python logtest.py
True
如果我这样做的解释,我得到了不同的结果:
Python 2.6.6 (r266:84292, Apr 11 2011, 15:50:32)
[GCC 4.4.4 20100726 (Red Hat 4.4.4-13)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> if -1 > 0:
... print "Whoa!"
... else:
... print "unWhoa!"
...
unWhoa!
谢谢!
如果打印TRUE;这意味着-1> 0是错的!再次检查你的代码,你在'else'块中返回'True'。一切工作正常。 – Selcuk 2015-02-11 12:02:46
为什么你不只是在这里返回'-1> 0'?那*已经是一个布尔值*。这样你就不会混淆你的布尔值。 – 2015-02-11 12:07:19