Introducing or
print 'a' or 'b' print '' or 'b' print '' or [] or {} def sidefx(): print "in sidefx()" return 1 'a' or sidefx() #If any value is true, or returns that value immediately. #In this case, 'a' is the first true value. #or evaluates '', which is false, then 'b', which is true, and returns 'b'. #If all values are false, or returns the last value. or evaluates '', #which is false, then [], which is false, then {}, which is false, and returns {}. #Note that or evaluates values only until it finds one that is true in a boolean #context, and then it ignores the rest.
1. | And or with values in a list | ||
2. | Introducing and | ||
3. | And Or in Python: int, empty list and empty dictionary | ||
4. | Using the and-or Trick | ||
5. | When the and-or Trick Fails | ||
6. | Using the and-or Trick Safely |