将函数作为参数传递给另一个函数时,如何指定输入函数的参数类型和返回类型?

时间:2019-06-29 17:33:58

标签: python python-3.x

说我有一些类似的功能:

def bar(b: str, func)->int:
    return func(b)

我想在bar中指定作为参数传递的func的输入类型和返回类型。这样,我可以传入func的不同版本,该版本也带有字符串,但返回整数。

可能有点像

def bar(b: str, func(a: str) -> list)->int:
    my_list = func(b)
    my_output = # do something with my_list that returns an int
    return my_output

但是这似乎不起作用。在python中有可能吗?

1 个答案:

答案 0 :(得分:3)

您可以使用typing.Callable

~