You are correct, both are valid. The difference is:
- UserA: you are overwriting the
__init__method of the ancestor. This is practical if you want to add something during the initialization process. However, you still want to initialize the ancestor, and this can be done via
super().__init__(), despite having overwritten the
- UserB: you are fully using the
__init__of the ancestor you are inheriting from (by not overwriting the
__init__method). This can be used if nothing extra needs to be done during initialization.
CLICK HERE to find out more related problems solutions.