ホームページ  >  記事  >  バックエンド開発  >  Python 匿名関数の定義と例の分析

Python 匿名関数の定義と例の分析

乌拉乌拉~
乌拉乌拉~オリジナル
2018-08-22 16:17:402351ブラウズ

次の記事では、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 サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。