Когда вызывается статический метод, есть ли способ узнать, из какого подкласса он был вызван?
(я знаю, что это очень не OO и, вероятно, никогда не пригодится в хорошо написанной программе, но я хотел бы знать, предоставляет ли язык это)
Например:
class A(object):
@staticmethod
def foo():
print 'bar'
# *** I would like to print either 'A' or 'B' here
class B(A):
pass
A.foo()
B.foo()