foreach
javascriptでできる場面に遭遇したとき、何か機能があれば便利だなと常々思っています。foreach とは、以下で説明する関数を意味します。
def foreach(fn,iterable):
for x in iterable:
fn(x)
彼らはすべての要素でそれを行うだけで、何かを生成したり返したりしませんでした.組み込み関数である必要があり、純粋なPythonで書くよりも高速であるはずですが、リストに見つかりませんでした.それは別の名前を呼んだだけですか?それとも、ここでいくつかの点を見逃しているだけですか?
多分私が間違っていたのかもしれません.Pythonで関数を呼び出すとコストが高くなります.この例では間違いなく良い習慣ではありません. out ループではなく、関数は、多くの python のコード提案で既に言及されている以下のように見える本体の側でループを実行する必要があります。
def fn(*args):
for x in args:
dosomething
しかし、次の2つの事実に基づいて、 foreach はまだ歓迎されていると思いました:
- 通常、人々はパフォーマンスを気にしません。
- API が iterable オブジェクトを受け入れず、そのソースを書き直すことができない場合があります。