【发布时间】:2018-01-02 02:29:45
【问题描述】:
print 1>0 == (-1)<0 # => False
print (1>0) == ((-1)<0) # => True
第一行打印 False。 第二行打印 True
问题是如果按照顺序比较运算符高于相等运算符。
不应该两行都打印 True 吗?(或者至少是同一件事..)
https://www.codecademy.com/en/forum_questions/512cd091ffeb9e603b005713
【问题讨论】:
-
我相信这个特殊情况与"comparison chaining"有关,这是一个Python特性——
1>0 == (-1)<0相当于1 > (0 == (-1)) < 0? -
清楚、详细地解释为什么你期望得到的结果与你得到的结果不同。
-
这个问题对我来说似乎很清楚。请确保使用适当的近距离投票/推理..(我不会怀疑重复。)
标签: python python-2.7 operator-precedence