如何指定一个带有可选参数的回调函数的类型?
例如,我有以下函数:
def getParam(param: str = 'default'):
return param
我想将它作为回调函数传递,并将其用作Callable[[str], str]
* 和 * Callable[[], str]
:
def call(callback: Callable[[<???>], str]):
return callback() + callback('a')
我尝试过Python的Optional
,但它不起作用,因为它仍然强制一个参数(即使值为None
)存在。
作为参考,我基本上是在搜索以下TypeScript的等价物:
function call(callback: (a?: string) => string) {
return callback() + callback('a');
}
1条答案
按热度按时间k7fdbhmy1#
www.example.com没有用于指示可选参数或关键字参数的语法https://docs.python.org/3/library/typing.html#typing.Callable
但是你可以用这样的东西