在python中实现类接口的正确方法是啥

Posted

技术标签:

【中文标题】在python中实现类接口的正确方法是啥【英文标题】:What is the right way to implement an interface like class in python在python中实现类接口的正确方法是什么 【发布时间】:2022-01-17 12:16:01 【问题描述】:

什么是让继承自超类的每个类在python中具有相同功能的正确方法?

超类没有实现任何东西,它只是定义了子类所需的功能,供某些应用程序中的函数使用。

在 Python 中实现这样的事情的正确方法是什么?

【问题讨论】:

请查看以下帖子以了解您的问题。 How do I implement interfaces in python? Python 是一种 Duck Typed 语言。如果在一个类中实现了所需的方法,那么该类是否继承自基类甚至都没有关系。 @MarkRansom 在不继承的情况下注册到 ABC 是一项非常强大的功能。就像__subclasshook__ 和打字协议一样。 【参考方案1】:

使用Abstract Base Classes 是建议的解决方案。

欢迎您阅读abc 模块,它信息量很大。

对于一些内置示例,您可以查看collections.abc。

【讨论】:

以上是关于在python中实现类接口的正确方法是啥的主要内容,如果未能解决你的问题,请参考以下文章

在 Scala Slick 中实现类实例成员修改的最佳方法?

在 Python 中实现钩子或回调的首选方法是啥?

在 Mongo 对象(文档)中实现表的正确方法是啥

java - day15 - NonameInner

如何在头文件C++中实现类对象

在 vega-lite 中实现自定义点击处理程序的正确方法是啥