假設我有一個二維函數f(x,y)和另一個函數G(函數),它將函數作爲輸入。但是,G只將一維函數作爲輸入,而我想將第二個變量作爲固定參數傳給f。將函數作爲一個固定輸入的變量傳遞
現在,我只是宣佈第三個函數h將y設置爲一個設定值。這是它看起來像某種形式:
def f(x,y):
something something something
return z;
def G(f):
something something something
def h(x):
c= something
return f(x,c);
G(h)
在某些時候,我也使y我默認參數,每次我會改變。
這些都不是的可讀性,如果我在某種程度上能夠調用
G(f(x,c))
特定語法不起作用。做這個的最好方式是什麼?
鑽營和部分應用是很好的話題進一步研究,如果你有興趣在函數式編程的支持。對於初學者,請參閱http://stackoverflow.com/questions/1352855/in-functional-programming-what-is-currying和http://stackoverflow.com/questions/218025/what-is-the-difference-between-currying -and-partial-application – roippi