Pythonにはschemeのapplyと同等の機能がありますか?私は、Pythonのreduceが2つの引数の関数に作用し、それを再帰的に適用することに気付きました。これは非常に異なります。Schemeに相当するPython適用
私自身で書きますか?いくつかのモジュールがありますか?
Pythonにはschemeのapplyと同等の機能がありますか?私は、Pythonのreduceが2つの引数の関数に作用し、それを再帰的に適用することに気付きました。これは非常に異なります。Schemeに相当するPython適用
私自身で書きますか?いくつかのモジュールがありますか?
Schemeの適用と同等のPythonは、引数に*
および/または**
の接頭辞を使用することです。例えば
:
>>> my_list = [1, 2]
>>> operator.add(*my_list)
3
*
接頭辞が位置引数の配列に使用され、**
プレフィックスがキーワード引数の辞書で使用されます。
すごい!どうもありがとう! – BlackSheep
(Laurenceの引数で示されているように)引数をアンパックすることは、あなたが望むことを行うための適切な方法です(すなわち、最良のPythonスタイルと見なされます)。 Schemeのapply
は技術的にはPythonのapply
ですが、現在は非推奨です。
私は 'apply'について言及していませんでした。なぜなら、実際には長い間非難されていたからです:http://www.python.org/dev/peps/pep-0290/#replace-apply-with-a-direct-function- –
彼は単に 'apply()'関数を探していたら、それを見つけたでしょう(ドキュメンテーションは新しい改良された方法を指摘していたはずです)。 – kindall
おそらく、彼はPython 3を使用しています。これはもはや 'apply'関数を持っていません。 –
実際に必要な機能について教えてください。私たち全員が制度を知っているわけではありません。 – delnan
@delnan http://en.wikipedia.org/wiki/Apply – Pubby