Posts: 24
Threads: 1
Joined: Jan 2020
No it is not, but it is good practice to do so and it is the expected way things work...
The __init__ function is used to set everything up when you create an instance of the class, so users of class B will assume that this has been done and if not, then it may produce bugs or side effects the user does not understand.
Furthermore if the developer of class A changes the implementation and now requires __init__ to be called in order for it to work correctly it will cause unknown issues for the use of class B.
Lots of time can be lost in tracking down and fixing bugs in this kind of situation, so best stick to the usual practice unless there is a very very good reason for doing so.
There is no passion to be found playing small - in settling for a life that is less than the one you are capable of living.