我想提示,对于 B 实例 .duplicate_itself(
) 返回 B 实例,而不是 A 实例。
class A:
def duplicate_itself(self) -> 'WHAT SHOULD I WRITE HERE?'
return self.__class__()
class B(A):
pass
顺便说一句,我正在使用 PyCharm,所以如果您知道一些 PyCharm 特定解决方案,请随意写一个答案
最佳答案
这可以通过附加 TypeVar
来完成致自己
:
T = typing.TypeVar('T')
class A:
def duplicate_itself(self: T) -> T:
return self.__class__()
关于python - 如何提示基类函数返回调用它的派生类的实例?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50697256/