ホームページ >バックエンド開発 >Python チュートリアル >Python のラムダ式にステートメントを含めることができないのはなぜですか?

Python のラムダ式にステートメントを含めることができないのはなぜですか?

WBOY
WBOY転載
2023-08-19 08:14:141680ブラウズ

Python のラムダ式にステートメントを含めることができないのはなぜですか?

はい、Python ラムダ式にはステートメントを含めることはできません。理由を詳しく説明する前に、Lambda とは何か、その式とステートメントについて理解しましょう。

ラムダ式では、匿名関数を定義できます。 Lambda 関数は名前のない匿名関数です。構文を見てみましょう -

リーリー

キーワード lambda はラムダ関数を定義します。ラムダ式には 1 つ以上のパラメータが含まれますが、式を含めることができるのは 1 つだけです。

ラムダの例

例を見てみましょう −

リーリー ###出力### リーリー

Lambda を使用して、別のリストの値に基づいてリストを並べ替える

この例では、別のリストの値に基づいてリストを並べ替えます。つまり、2 番目のリストは、並べ替えられた順序でインデックスによって並べ替えられます -

リーリー ###出力### リーリー

ラムダ式にはステートメントを含めることはできません

上でラムダ式の使用例を 2 つ見てきました。 Python の構文フレームワークは式内にネストされたステートメントを処理できないため、Python のラムダ式にはステートメントを含めることはできません。

Python では、関数はすでにファーストクラスのオブジェクトであり、ローカル スコープで宣言できます。したがって、関数をローカルで定義する代わりにラムダを使用する唯一の利点は、関数に名前を付ける必要がないこと、つまり匿名関数ですが、関数オブジェクトに割り当てられるのは単なるローカル変数であることです。

以上がPython のラムダ式にステートメントを含めることができないのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はtutorialspoint.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。