Python方法签名中的->(大于-破折号-箭头符号)是什么意思?[重复]
这个问题已经在这里有了答案 :
->在Python函数定义中是什么意思? (8个答案)
2年前关闭。
->
python方法的末尾有一个或破折号-大于符号,我不确定它的含义。人们可能也称它为箭头。
这是示例:
@property
def get_foo(self) -> Foo:
return self._foo
self._foo
Foo的实例在哪里。
我的猜测是,它是某种静态类型声明,以告诉解释器其self._foo
类型为Foo。但是当我对此进行测试时,如果self._foo
不是Foo的实例,则不会发生任何异常情况。另外,如果self._foo
类型不是Foo,则假设它是an
int
,然后type(SomeClass.get_foo())
返回int
。那么,这有什么意义-> Foo
呢?
这个概念很难查找,因为它是没有通用名称的符号,术语“箭头”具有误导性。