类指针的正确类型提示是什么?



我不确定是否类指针在python中是正确的术语,但我正在寻找在这个极简主义的例子中适当的类型提示:

class AnotherClass:
some_var=5
class SomeClass:
def some_function(self, model: AnotherClass) -> AnotherClass:
return model()
当我用mypy对上面的代码片段进行类型检查时,会抛出以下错误:

some_dir/some_file.py:6: error: "AnotherClass"没有可调用

:在这种情况下,模型参数的适当类型提示是什么?


下面删除了mypy错误,但它似乎不正确。

def some_function(self, model: Callable[..., AnotherClass]) -> AnotherClass:
return model()

我相信你想要的是Type[AnotherClass],因为你传递的是类本身,而不是那个类的实例。

用C注释的变量可以接受C类型的值。相反,用type [C]注释的变量可以接受类本身的值——具体来说,它将接受C的类对象。

相关内容

  • 没有找到相关文章

最新更新