我在尋找實現此功能的方法:這些功能函數叫什麼?
list = [a b c d e f]
foo(list, 3) = [[a d] [b e] [c f]]
一個潛在的解決方案是:
foo(list,spacing) = zip(goo(list,spacing))
其中,例如,
goo([a b c d e f],3) = [[a b c] [d e f]]
什麼是foo
和goo
通常被稱爲,所以我可以尋找現有的解決方案,而不是重新發明輪子?
備註:我沒有試圖用文字解釋,而是展示了希望更容易獲得的例子。用於更廣泛理解的任意語法。
我認爲你正在尋找的術語是「高階函數」或「組合子」。 –
在第一個例子中,「c」和「d」是否被切換?如果輸入列表超過輸入數字的兩倍,會發生什麼情況? –
@DanielWagner這是非常錯誤的,對不起。就像mobyte指出的那樣,'foo'與'zip(partition(list,spacing))'是等價的,但也許它沒有名字。 – MaiaVictor