typing module包含许多协议和抽象基类,它们正式指定了在typing中非正式描述的协议,因此它们可用于类型提示。
typing
但是我无法为支持the data model的对象找到这样的协议或抽象基类。是否有这种协议的正式规范?如果没有,这样的实现将是什么样子?
您可以使用__add__定义自己。此处提供的ABC元类允许您定义abc module,您可以在其中检查类方法,例如__subclasshook__。如果为某个类定义了此方法,则将其视为该abc的子类。
__add__
__subclasshook__