簡體   English   中英

Function 調用函數

[英]Function calling functions

創建一個 function,它將任意數量的函數作為位置 arguments。 function 一一返回函數參數的執行。 請參閱示例以獲得更好的理解(我們稱之為 function)。

my_func = chain(lambda x: x + 2, lambda x: (x/4, x//4))
my_func(37)

它應該返回

(9.75, 9)

我試圖做類似的事情:

def chain(x,*args):
    for arg in args:
        arg(x)

它不工作。 無法理解如何將非 function 參數用於此 function(在上面的示例 37 中)。

您是否正在尋找這樣的東西:

def chain(*funcs):
    def chained(*args, **kwargs):
        return tuple(func(*args, **kwargs) for func in funcs)
    return chained

my_func = chain(lambda x: x + 2, lambda x: (x/4, x//4))
print(my_func(37))

Output:

(39, (9.25, 9))

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM