我今天看到了一个python示例,它使用了 - >例如,这就是我所看到的:
spam = None
bacon = 42
def monty_python(a:spam,b:bacon) -> "different:":
pass
那段代码在做什么?我不太确定我从未见过这样的代码我真的没有得到什么
a:spam,b:bacon
正在做任何一件事,有人可以为我解释一下吗?我用谷歌搜索,“在python中做了什么 - >”但是我找不到好的搜索。
答案 0 :(得分:29)
它是返回类型的函数注释。 annotations
在代码中不执行任何操作,它们可以帮助用户完成代码(根据我的经验)。
以下是PEP。
让我演示一下,我的意思是“注释在代码中什么都不做”。这是一个例子:
def fun(a: str, b: int) -> str:
return 1
if __name__ == '__main__':
print(fun(10, 10))
上面的代码将运行没有任何错误。但是你可以看到第一个参数 应该是string
,第二个参数是int
。但是,这只是我的IDE中的问题,代码运行得很好:
答案 1 :(得分:7)
他们是function annotations。它们本身并没有真正做任何事情,但它们可以用于文档或与元编程结合使用。