Python类和协议的多重继承



在Python中,我有两个协议,其中一个继承自另一个:

class SupportsFileOperations(Protocol):
...
class SupportsMediaOperations(SupportsFileOperations):
...

然后我有两个实现这些协议的具体类,一个继承另一个。

class File(SupportsFileOperations):
...
class MediaFile(File, SupportsMediaOperations):
def __init__(self):
File.__init__(self)

我的问题是,在MediaFile构造函数中调用File.__init__(self)是初始化的正确方法吗?我不确定多重继承如何与协议一起工作。

谢谢!

您可以简单地在子类中添加Protocol:

from typing import Protocol
class SupportsFileOperations(Protocol):
...
class SupportsMediaOperations(SupportsFileOperations, Protocol):
...

相关内容

  • 没有找到相关文章

最新更新