为什么True!= True!= True评估为False

Sac*_*iah -2 python

在Python中,True != TrueFalse,False != True应该是True.但是,那么评估结果不应该是True吗?

gan*_*dis 7

这是因为两个检查是独立执行的.True != True != True相当于True != True and True != True,其计算结果为False,作为既不是操作数的计算结果为True(事实上,它甚至不评估第二True != True比较,由于短路).

相关文件:

比较可以任意链接,例如,x < y <= z等同于x < y and y <= z,除了y仅评估一次(但在两种情况下z都没有被评估,当x < y发现是假的时).