ホームページ バックエンド開発 Python チュートリアル 匿名関数とは何ですか? Python の匿名関数の用途は何ですか?

匿名関数とは何ですか? Python の匿名関数の用途は何ですか?

Aug 17, 2018 pm 05:54 PM
無名関数

関数を渡す場合、関数を明示的に定義する必要がない場合があります。匿名関数を直接渡す方が便利です。

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
ログイン後にコピー

同様に、匿名関数を関数として返すこともできます。

def build(x, y):
    return lambda: x * x + y * y
ログイン後にコピー

セキュリティと制御性を向上させるために詳細をカプセル化します。多くの場合、グローバル スコープ内の関数の外で使用されるため、グローバル スコープへの変数や関数の追加が多すぎることが制限されます。
グローバル スコープでブロック レベルのスコープを使用すると、匿名関数への参照がなく、関数が実行されている限りそのスコープ チェーンはすぐに破棄できるため、クロージャがメモリを占有する問題を軽減できます。

ブロックレベル (プライベート) スコープを模倣:

function box(){
    for(var i=0;i<5;i++){  //块级作用域(js无)
    }   
     var i //即便重新声明,也不会影响之前的值
    alert(i);//5
 }
box();
ログイン後にコピー


以上が匿名関数とは何ですか? Python の匿名関数の用途は何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

C++ 匿名関数の使用法と特徴 C++ 匿名関数の使用法と特徴 Apr 19, 2024 am 09:03 AM

ラムダ式とも呼ばれる匿名関数は、名前を指定せず、1 回限りの使用または関数ポインターを渡すために使用される関数です。機能には、匿名性、ワンタイム使用、クロージャ、戻り値の型推論が含まれます。実際には、ソートやその他の 1 回限りの関数呼び出しによく使用されます。

Golang関数における匿名関数適用シナリオの分析 Golang関数における匿名関数適用シナリオの分析 May 16, 2023 pm 10:51 PM

最新のプログラミング言語として、Golang (Go 言語とも呼ばれる) には多くの強力な機能があります。その中でも匿名関数はGolangにおいて非常に重要な概念であり、様々なシーンで広く使われています。この記事では、Golang 関数の匿名関数の適用シナリオを深く分析します。イベント ハンドラー イベント ハンドラーでは、匿名関数は非常に便利で実用的なツールです。カスタム ロジックは、funcmain(){bt などの匿名関数を通じてイベント ハンドラーに渡すことができます。

PHP7 の匿名関数とクロージャを使用して、より柔軟なコード ロジック処理を実現するにはどうすればよいですか? PHP7 の匿名関数とクロージャを使用して、より柔軟なコード ロジック処理を実現するにはどうすればよいですか? Oct 21, 2023 am 10:21 AM

PHP7 の匿名関数とクロージャを使用して、より柔軟なコード ロジック処理を実現するにはどうすればよいですか? PHP7 より前は、関数を使用して特定のロジック部分をカプセル化し、コード内でこれらの関数を呼び出して特定の関数を実装することがよくありました。ただし、コード内に一時的なロジック ブロックを定義する必要がある場合があります。これらのロジック ブロックは独立した関数を作成する必要がなく、同時にコードにあまりにも多くのグローバル変数を導入したくありません。 PHP7 では、この問題をうまく解決できる匿名関数とクロージャが導入されています。無名関数とは名前のない関数です

Golang の匿名関数は複数の値を返すことができますか? Golang の匿名関数は複数の値を返すことができますか? Apr 13, 2024 pm 04:09 PM

はい、Go 言語の匿名関数は複数の値を返すことができます。構文: func(arg1,arg2,...,argN)(ret1,ret2,...,retM){//関数本体}。使用法: 戻り値を受け取るには := 演算子を使用し、複数の値を返すには return キーワードを使用します。

PHP8.0の匿名関数 PHP8.0の匿名関数 May 14, 2023 am 08:31 AM

PHP8.0 は、PHP プログラミング言語の最新バージョンです。重要な更新の 1 つは、匿名関数の改善と機能強化です。匿名関数 (クロージャとも呼ばれます) は、実行時に動的に作成して他の関数に渡したり、変数に格納したりできる特殊なタイプの関数です。 PHP では、匿名関数は高度なプログラミングや Web 開発にとって重要です。 PHP8.0 は、匿名関数をより柔軟で使いやすくする新しい構文と機能をいくつか提供します。更新内容の一部は次のとおりです: PHP8.0 の関数パラメータの型宣言、

PHP7 の匿名関数とクロージャを使用して、より柔軟で再利用可能なコード ロジックを実現するにはどうすればよいでしょうか? PHP7 の匿名関数とクロージャを使用して、より柔軟で再利用可能なコード ロジックを実現するにはどうすればよいでしょうか? Oct 24, 2023 am 10:30 AM

PHP7 の匿名関数とクロージャを使用して、より柔軟で再利用可能なコード ロジックを実現するにはどうすればよいでしょうか? PHP プログラミングの世界では、匿名関数とクロージャは非常に貴重で強力なツールです。 PHP7 では、匿名関数とクロージャをより便利かつ柔軟に使用できるようにするいくつかの新しい言語機能が導入されています。この記事では、PHP7 の匿名関数とクロージャを使用して、より柔軟で再利用可能なコード ロジックを実現する方法を紹介し、いくつかの具体的なコード例を示します。 1. 無名関数 無名関数とは、名前のない関数です。 PHPでは匿名を使用できます

Python ラムダ式: プログラミングを簡単にする Python ラムダ式: プログラミングを簡単にする Feb 19, 2024 pm 09:54 PM

Python のラムダ式は、式を変数に格納し、その値を返す小さな匿名関数です。ラムダ式は、別の関数を作成することで実行できる単純なタスクを実行するためによく使用されますが、ラムダ式を使用すると、コードがより簡潔で読みやすくなります。 Lambda 式の構文は次のとおりです。 lambdaarguments:expressionarguments は Lambda 式によって受け取られるパラメータ リストで、expression は実行する必要があるコードを含む Lambda 式の本体です。たとえば、次のラムダ式は 2 つの数値を加算し、その合計を返します: lambdax,

Python ラムダ式: 省略、簡潔、強力 Python ラムダ式: 省略、簡潔、強力 Feb 19, 2024 pm 08:10 PM

pythonLambda 式は、簡潔で読みやすく、使いやすいコードを作成するための強力で柔軟なツールです。これらは、他の関数に引数として渡したり、変数に保存したりできる匿名関数をすばやく作成するのに最適です。 Lambda 式の基本構文は次のとおりです。 lambdaarguments:expression たとえば、次の Lambda 式は 2 つの数値を加算します: lambdax,y:x+y この Lambda 式は、次のように引数として別の関数に渡すことができます。 defsum( x ,y):returnx+yresult=sum(lambdax,y:x+y,1,2) この例では

See all articles