magic methods are special methods that start and end with double underscores, also known as dunder methods (double underscore).
Built-in classes in Python define many magic methods. Use the dir()
function to see the number of magic methods inherited by a class.