>>> a = False
>>> b = False
>>> a | b
True
>>> a
True
>>> b
True
我在 python 解释器中得到它。
我只是不这么认为。有没有关于python boolean type的详细资料?
我使用 Python 2.6.6,谢谢!
请您参考如下方法:
我只能看到您的问题在一个上下文中有意义:
>>> False = True
>>> a = False
>>> b = False
>>> a | b
True
>>> a
True
>>> b
True
>>>
开始调试 - print int(False) 的结果是什么?如果发生上述情况,您应该得到 1。尝试:
>>> False = bool(0)
>>> a = False
>>> b = False
>>> a | b
False
至于发生这种情况的原因 - 也许有人对您进行了恶作剧并更改了 False 的值(请参阅 this answer)?我真的想不出还有什么会导致这种情况。您始终可以在需要的模块中将 False 设置为 bool(0),以防止出现这种情况。
或者切换到 Python 3,这使得 True 和 False 保留字无法更改。
