为什么 print(3 > 0 == True) 显示 False?

Why does print(3 > 0 == True) show False?

python个比较运算符的顺序是从左到右。这样,print(3 > 0 == True) 显示 False,但等效语句:print((3 > 0) == True) 显示 True。 此外,print(3 > (0 == True)) 显示 True。

那么为什么 print(3 > 0 == True) 显示 False?

我的python版本是3.8.2。

这是怎么回事:

3 > 0 == True 被解释为 (3>0) AND (0==True) 得到 True AND False 这当然是 False

这就是为什么例如语句:3 > 1 == True 计算为 True