Issue 33364: Conditionals not evaluating propertly (original) (raw)
The following code generates False when it should generate true:
True == False < 20
Either way the order of operation is taken should result in True but the answer still results in False. To further confirm this issue I did a simple test in which we would group the operations, the test uses print statements to visualize results. The short following code represents the above conditional and the two order of operations possibilities.
print(True == False < 20); print((True == False) < 20); print(True == (False < 20));
This yields the following output:
False True True
Proving the bug. To explain even further, the code shall be interpreted in either of the following two ways:
True == False < 20 False < 20 True
True == False < 20 True == True True
In either case the result is True, yet python yields False.