As noted in Python 3 documention, behaviors of +, -, *, etc. can be redefined.
Specially, I would like to take notes on some special yet common methods.
This method is called when you apply
Those two methods are key components of a context manager. Refer to https://jeffknupp.com/blog/2016/03/07/python-with-context-managers/ to get a sense on how to manage the fragile resouces with context manager.