粉毛红瞳精神病美少女松坂砂糖 (@MatsuzakaSato) 在 私は天才だ( 中发帖
写Core的时候定义了一堆带callback的函数,一般来说可有可无的callback可以在参数里定义成None:
def download(url, progress: Callable=None):
...
if progress and callable(progress):
progress(...)
每个回调函数使用之前都这么判断一遍显然不是那么 Lazy Friendly Pythonic,一个很显然的办法就诞生了:
def empty(*args, **kwargs):
pass
def download(url, progress: Callable=empty):
...
progress(...)
empty函数什么也没有干,只是作为一个可以接受任何参数传入的函数,成为了回调函数progress的默认值。...