您可以在Python 3中使用函数注释来指示参数和返回值的类型,如下所示:
def myfunction(name: str, age: int) -> str:
return name + str(age) #usefulfunction
但是,如果您正在编写一个需要函数作为参数或返回函数的函数怎么办?
我意识到您可以为注释编写任何有效的表达式,因此我可以将“函数”编写为字符串,但这是最好/唯一的方法吗?有没有像内置类型
int/float/str/list/dict
之类的东西?我知道callable
,但我想知道是否还有其他事情。
没有为注释定义样式。使用
callable
、types.FunctionType
或字符串。
PS:
callable
在Python 3.0和3.1中不可用
非常有趣...我什至从未听说过 Python 3 中的函数注释。解释器中的以下代码建议您可以使用
function
代替 str
和 int
。 只是我的两分钱。
>>> a = lambda x: x*2
>>> type(a)
<class 'function'>