如何在Python中创建类或方法摘要?
我试着__new__()像这样重新定义:
class F:
    def __new__(cls):
        raise Exception("Unable to create an instance of abstract class %s" %cls)
但是现在如果我创建一个G继承自F这样的类:
class G(F):
    pass
然后我也无法实例化G,因为它调用了它的超类__new__方法.
有没有更好的方法来定义抽象类?
我想问一下这个with_metaclass()调用在一个类的定义中意味着什么.
例如:
class Foo(with_metaclass(Cls1, Cls2)):
我有以下简化方案:
class NetworkAnalyzer(object):
    def __init__(self):
       print('is _score_funct implemented?')
    @staticmethod
    def _score_funct(network):
        raise NotImplementedError
class LS(NetworkAnalyzer):
    @staticmethod
    def _score_funct(network):
        return network
我正在寻找应该使用什么来print('is _score_funct implemented?')确定子类是否已经实现_score_funct(network)。
注意:如果有一种更Pythonic/传统的方式来构造代码,我也将不胜感激。我这样定义它的原因是,一些 NetworkAnalyzer 子类在其定义中具有 _score_funct ,而那些没有它的子类将具有不同的变量初始化,尽管它们将具有相同的结构