Em meu aplicativo Python, quero fazer um método que seja ae staticmethod
an abc.abstractmethod
. Como eu faço isso?
Tentei aplicar os dois decoradores, mas não funcionou. Se eu fizer isso:
import abc
class C(object):
__metaclass__ = abc.ABCMeta
@abc.abstractmethod
@staticmethod
def my_function(): pass
Recebo uma exceção * e se eu fizer isso:
class C(object):
__metaclass__ = abc.ABCMeta
@staticmethod
@abc.abstractmethod
def my_function(): pass
O método abstrato não é obrigatório.
Como posso fazer um método estático abstrato?
*A exceção:
File "c:\Python26\Lib\abc.py", line 29, in abstractmethod
funcobj.__isabstractmethod__ = True
AttributeError: 'staticmethod' object has no attribute '__isabstractmethod__'