はい、Python ラムダ式にはステートメントを含めることはできません。理由を詳しく説明する前に、Lambda とは何か、その式とステートメントについて理解しましょう。
ラムダ式では、匿名関数を定義できます。 Lambda 関数は名前のない匿名関数です。構文を見てみましょう -
リーリー
キーワード lambda はラムダ関数を定義します。ラムダ式には 1 つ以上のパラメータが含まれますが、式を含めることができるのは 1 つだけです。
ラムダの例
例を見てみましょう −
リーリー
###出力###
リーリー
Lambda を使用して、別のリストの値に基づいてリストを並べ替える
この例では、別のリストの値に基づいてリストを並べ替えます。つまり、2 番目のリストは、並べ替えられた順序でインデックスによって並べ替えられます -
リーリー
###出力###
リーリー
ラムダ式にはステートメントを含めることはできません
上でラムダ式の使用例を 2 つ見てきました。 Python の構文フレームワークは式内にネストされたステートメントを処理できないため、Python のラムダ式にはステートメントを含めることはできません。
Python では、関数はすでにファーストクラスのオブジェクトであり、ローカル スコープで宣言できます。したがって、関数をローカルで定義する代わりにラムダを使用する唯一の利点は、関数に名前を付ける必要がないこと、つまり匿名関数ですが、関数オブジェクトに割り当てられるのは単なるローカル変数であることです。
以上がPython のラムダ式にステートメントを含めることができないのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。