函数返回lambda的类型注释

麦格纳开发

我非常喜欢在Python中使用类型注释的想法。我知道如何通过以下简单示例进行操作:

def foo(bar : int, lol : int) -> int:
     return bar*lol

但是当我的函数要返回lambda时,我不知道如何执行此操作:

def line(slope : float, b : float) -> lambda:
     return lambda x: slope*x + b

这个例子产生了一个错误,我想知道这个返回类型应该使用什么关键字。

也许这似乎没什么用,但是我想对代码进行一致的注释,而无法使用这些类型的函数这样做确实让我感到困扰。

提前致谢。

致癌物质

您可以使用Callable键入提示返回:

from typing import Callable

def line(slope : float, b : float) -> Callable[[float], float]:
     return lambda x: slope*x + b

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章