在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):
...