I have two base classes A and B each of them have a method myfunc, which prints out a different character.
class A:
    def myfunc(self):
        print('A')
class B:
    def myfunc(self):
        print('B')
I have one more class C which is inheriting from A and B both. In class C I have overridden myfunc and called super over it.
class C(B, A):
    def myfunc(self):
        super().myfunc()
Now if I execute following code, it prints only one character
x = C()
x.myfunc()
Output:
B
I tried print(C.__mro__) which gives me (<class '__main__.C'>, <class '__main__.B'>, <class '__main__.A'>, <class 'object'>) So it should go to class A and  print character A also. right?
Also if I switch the order of inheritance like C(A,B) it and use the same code , it is skipping class B.
My questions:
- Why it's skipping 
class A? - How to execute  
myfuncmethod in both classesAandB 
I looked up similar discussion but found it confusing.