python中的高阶函数数据类型



我必须键入hint这个函数我知道它需要一个列表和一个函数f。这很清楚。它取列表中的int;带有函数f的东西,它会附加到字符串中。但是f:as类型提示中包含了什么?可调用,然后呢?

def g(L: list[int], f: Callable[[], ]) -> str:
result = ""
for el in L:
result+=f(el)
return result
Mypy output:
data_types_2.py:13: error: Unsupported operand types for + ("str" and "int")
result+=f(el)

第一个列表应该是f的参数类型;最后一个元素应该是它的返回类型。

参考编号:https://docs.python.org/3/library/typing.html#callable

我找到了解决方案

def g(L: list[int], f: Callable[[int], str]) -> str:
result = ""
for el in L:
result+=f(el)
return result

相关内容

  • 没有找到相关文章

最新更新