Why do we not pass anything for self?
Python knows that the
__init__() method’s first parameter, typically called
self, is assigned to the object you create when you initialize it. That way you can use
self throughout your class to accomplish things with that particular object!
If you do pass something for
self when initializing an object, you’ll get an error about the number of arguments provided and the number of arguments expected. This is because whatever you pass starts by giving value to the second, third, fourth, and so on, parameters.
Animal example, we have 4 parameters total:
self, name, age, is_hungry. However, if we try to pass it 4 arguments when we call it, we’re actually passing it 5, because it automatically passes