Lowest price ever! Learn Generative AI for 48% less!
Get my discount+ 2
Why does "print(False == (False or True))" return False?
Hi ! I'm doing the Python course on the operators and the booleans. I was specificly learning the operator - precedence. I don't understand why it returns False. In fact, "(True or False)" can be False and match with the "==". So why is it everytime False ? I would be nice to explain me where does my reasonning fail :) Thank you in advance ! Koast
7 Answers
+ 1
or is either one has to be true so it can return true, else its false
+ 4
false or true returns true. false == true is false
+ 2
Thanks a lot maxcookmax ! The point i didn't get was that "(False or True)" returns True each time there is a True in the instruction.
Koast
+ 2
Happy to help!
What I think the reason why is because true (1) and false (0) are one byte. 1 is on 0 is off, no electricity flows when its 0, or false, so a true is worth more.
Hopefully that makes sense lol
+ 1
Does someone know the reason why False is overriden by True ?
+ 1
It makes sense ! :D
Thank a lot for your help. Very helpful !
Koast
+ 1
Try to run this code i.e,
print(False or True)
you will get the output : True
and then evaluate the expression print(False==True)
ultimately the output will be False.
Hope you find it helpful.
Thank you :-)