In meiner Python-App möchte ich eine Methode erstellen, die sowohl a staticmethod
als auch an ist abc.abstractmethod
. Wie mache ich das?
Ich habe versucht, beide Dekorateure anzuwenden, aber es funktioniert nicht. Wenn ich das mache:
import abc
class C(object):
__metaclass__ = abc.ABCMeta
@abc.abstractmethod
@staticmethod
def my_function(): pass
Ich bekomme eine Ausnahme * und wenn ich das mache:
class C(object):
__metaclass__ = abc.ABCMeta
@staticmethod
@abc.abstractmethod
def my_function(): pass
Die abstrakte Methode wird nicht erzwungen.
Wie kann ich eine abstrakte statische Methode erstellen?
*Die Ausnahme:
File "c:\Python26\Lib\abc.py", line 29, in abstractmethod
funcobj.__isabstractmethod__ = True
AttributeError: 'staticmethod' object has no attribute '__isabstractmethod__'