次の記事では、Python 匿名関数 とは何かについて学びましょう。 Python 匿名関数と Python 匿名関数 の利点について学びます。さて、早速、次の記事から始めましょう。
匿名関数
Python はラムダを使用して匿名関数を作成します。
lambda は単なる式であり、関数本体は def よりもはるかに単純です。
ラムダの本体は式であり、コード ブロックではありません。ラムダ式にカプセル化できるロジックは限られています。
ラムダ関数には独自の名前空間があり、独自のパラメータ リストの外やグローバル名前空間内のパラメータにアクセスすることはできません。
ラムダ関数は 1 行しか書けないようですが、C や C のインライン関数と同等ではありません。後者の目的は、小さな関数を呼び出すときにスタック メモリを占有しないことです。したがって、作業効率が向上します。
関数を渡す場合、関数を明示的に定義する必要がない場合があります。匿名関数を直接渡す方が便利です。
Python では、匿名関数のサポートが制限されています。さらにmap()関数を例にとると、f(x)=x2を計算するとき、f(x)の関数を定義することに加えて、匿名関数を直接渡すこともできます:
>>> list(map(lambda x: x * x, [1, 2, 3, 4, 5, 6, 7, 8, 9]))[1, 4, 9, 16, 25, 36, 49, 64, 81]
As比較すると、匿名関数 lambda x: x * x は実際には次のようになります:
def f(x): return x * x
キーワード lambda は匿名関数を表し、コロンの前の x は関数パラメータを表します。
匿名関数には制限があります。つまり、式は 1 つだけ持つことができます。return を記述する必要はありません。戻り値は式の結果です。
匿名関数の使用には 利点があります。関数には名前がないため、関数名の競合を心配する必要がありません。また、匿名関数も関数オブジェクトであり、匿名関数を変数に割り当て、その変数を使用して関数を呼び出すこともできます:
>>> f = lambda x: x * x >>> f <function <lambda> at 0x101c6ef28> >>> f(5)25
python匿名関数に関する知識があります」を紹介していますので、上記の内容を理解するために活用していただければ幸いです。この記事で説明したことがあなたのお役に立ち、Python の学習が容易になることを願っています。
関連知識の詳細については、php 中国語 Web サイトのPython チュートリアル 列を参照してください。
>以上がPython 匿名関数の定義と例の分析の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。