Python中的“接口”:可以还是不可以?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (96)

因此,我在静态领域花费了大量时间之后,使用Python启动了一个项目。我见过一些创建“接口”的项目,它们实际上只是没有任何实现的类。在此之前,我会嘲笑这个想法,而忽略那些项目的那一部分。但现在,我开始接受这个想法了。

为了清楚起见,Python中的接口应该如下所示:

class ISomething(object):
    def some_method():
        pass
    def some_other_method(some_argument):
        pass

请注意,您没有将Self传递给任何方法,因此需要调用该方法。我认为这是一种很好的文档和完整性测试形式。

提问于
用户回答回答于

类型和协议是Python的一个基本方面,只有在绝对必要的情况下才使用接口。

用户回答回答于
class Something(object):
    def some_method(self):
        raise NotImplementedError()
    def some_other_method(self, some_argument):
        raise NotImplementedError()

扫码关注云+社区

领取腾讯云代金券

玩转腾讯云 有奖征文活动