Llamando al método de clase base en Python

Tengo dos clases A y B y A es la clase base de B.

Leí que todos los métodos en Python son virtuales.

Entonces, ¿cómo llamo a un método de la base porque cuando trato de llamarlo, el método de la clase derivada se llama como se esperaba?

>>> class A(object): def print_it(self): print 'A' >>> class B(A): def print_it(self): print 'B' >>> x = B() >>> x.print_it() B >>> xA ??? 

Usando super :

 >>> class A(object): ... def print_it(self): ... print 'A' ... >>> class B(A): ... def print_it(self): ... print 'B' ... >>> x = B() >>> x.print_it() # calls derived class method as expected B >>> super(B, x).print_it() # calls base class method A 

Dos caminos:

 >>> A.print_it(x) 'A' >>> super(B, x).print_it() 'A'