Python 时间(0,0)在布尔上下文中计算为False

Python 时间(0,0)在布尔上下文中计算为False,python,datetime,Python,Datetime,(Python v3.4) 有人能解释一下这背后的逻辑吗 from datetime import (datetime, time,) dt = datetime(2015, 1, 1, 0, 0) t1 = dt.time() t1 or print("I'm False") 我是假的 为什么非None对象的计算结果为false?“00:00”的时间不是有效的吗 这是一个bug。信息技术有关详细讨论,请参阅。这是一个错误。信息技术请参阅以获取进一步的讨论。不,它们都打印假oop,是的,它

(Python v3.4)

有人能解释一下这背后的逻辑吗

from datetime import (datetime, time,)

dt = datetime(2015, 1, 1, 0, 0)
t1 = dt.time()

t1 or print("I'm False")
我是假的


为什么非None对象的计算结果为false?“00:00”的时间不是有效的吗

这是一个bug。信息技术有关详细讨论,请参阅。

这是一个错误。信息技术请参阅以获取进一步的讨论。

不,它们都打印假oop,是的,它们都打印假oop。修复了将焦点放在对象计算结果为false这一事实上的问题。抱歉:-/@klirion,如果左侧为任何错误值,则右侧将执行
0
[]
{}
等。这些都是非无对象,它们的计算结果都是
错误
-您同意这有意义吗?如果是这样,为什么“零”时间的计算结果应该是
True
?更不用说有有效的论据反对0、[]、{}是假的事实了,为什么时间“00:00”会是假的?不,它们不是都打印假oop,是的,它们都打印假oop。修复了将焦点放在对象计算结果为false这一事实上的问题。抱歉:-/@klirion,如果左侧为任何错误值,则右侧将执行
0
[]
{}
等。这些都是非无对象,它们的计算结果都是
错误
-您同意这有意义吗?如果是这样,为什么“零”时间的计算结果应该是
True
?更不用说有有效的论据反对0、[]、{}是假的,为什么时间“00:00”会是假的?谢谢,这是有意义的。我正要回答它是假的,原因与
bool(0)
是假的一样。我很高兴在我点击提交按钮之前找到了这个答案!谢谢,这是有道理的。我正要回答它是假的,原因和
bool(0)
是假的一样。我很高兴在我点击提交按钮之前找到了这个答案!