How it works...
So, we were able to store functions for the four mathematical operators in the operators dictionary and look them up based on the text that was encountered in the expression.
In calculate, the expression is split by space, so 5 + 3 becomes ['5', '+', '3']. Once we have the three elements of the expression (the two operands and the operator), we can just iterate over the parts and when we encounter the +, look it up in the operators dictionary to get back the associated function that should be called, which is operator.add.
The operator module contains functions for the most common Python operators, from comparisons (operator.gt) to dot-based attribute access (operator.attrgetter).
Most of the provided functions are meant to ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access