January 2015
Intermediate to advanced
360 pages
8h 50m
English
Functional programming's efficiency stems, in part, from being able to defer a computation until it's required. The idea of lazy or non-strict evaluation is very helpful. It's so helpful that Python already offers this feature.
In Python, the logical expression operators and, or, and if-then-else are all non-strict. We sometimes call them short-circuit operators because they don't need to evaluate all arguments to determine the resulting value.
The following command snippet shows the and operator's non-strict feature:
>>> 0 and print("right") 0 >>> True and print("right") right
When we execute the preceding command snippet, the left-hand side of the and operator is equivalent to False; the right-hand side is not ...
Read now
Unlock full access