Say I have a base class Person and two derived classes Footballer and Musician.
Obviously a person can be both a footballer and a musician, so maybe I want a third class called FootballerAndMusician, but this class will just be a combination of the two other classes (there will not be conflicts: the two derived classes only override some specific things, and nothing in Musician overrides that which is overriden in Footballer, and vice versa).
What is the appropiate way to implement this pattern in Python that avoids having to repeat the code in the two derived classes in a third class (Imagine if I had to do this with several classes…)?
Basically, I want to implement many derived classes to Person, and then easily be able to combine them as long as there aren't conflicts.
How is this designed in Python?