ホームページ > よくある問題 > Python の高階関数とは何ですか?

Python の高階関数とは何ですか?

小老鼠
リリース: 2023-11-10 16:42:14
オリジナル
1307 人が閲覧しました

高階関数には、map()、filter()、reduce()、lambda 関数、partial() などが含まれます。詳細な紹介: 1. map(): この組み込み関数は、関数と 1 つ以上の反復可能オブジェクトを入力として受け取り、入力関数を反復可能オブジェクトの各要素に適用する反復子を返します。 2. filter():この組み込み関数は、関数と反復可能なオブジェクトを入力として受け取り、入力関数が True などを返す要素を生成する反復子を返します。

Python の高階関数とは何ですか?

Python の高階関数は通常、1 つ以上の関数を入力 (パラメーター) として受け入れるか、出力として関数を返す関数を指します。この概念は関数型プログラミングによく登場します。

Python の高階関数の例をいくつか示します:

map(): この組み込み関数は、関数と 1 つ以上の反復可能なオブジェクトを入力として受け取り、次の関数を返します。反復可能オブジェクトの各要素に適用される反復子。

def square(n):  
    return n * n  
numbers = [1, 2, 3, 4, 5]  
squared = map(square, numbers)  
print(list(squared))  # Output: [1, 4, 9, 16, 25]
ログイン後にコピー

filter(): この組み込み関数は、関数と反復可能なオブジェクトを入力として受け取り、入力関数が True を返す原因となる要素を生成する反復子を返します。

def is_even(n):  
    return n % 2 == 0  
numbers = [1, 2, 3, 4, 5]  
even_numbers = filter(is_even, numbers)  
print(list(even_numbers))  # Output: [2, 4]
ログイン後にコピー

reduce(): この組み込み関数は、関数と反復可能オブジェクトを入力として受け取り、その関数を使用して、要素が 1 つだけ残るまで反復可能オブジェクト内の要素を 2 つずつ結合します。

from functools import reduce  
def add(x, y):  
    return x + y  
numbers = [1, 2, 3, 4, 5]  
sum_of_numbers = reduce(add, numbers)  
print(sum_of_numbers)  # Output: 15
ログイン後にコピー

ラムダ関数: ラムダ関数は、匿名関数を作成する方法であり、短い関数定義に非常に適しています。

squared = list(map(lambda x: x ** 2, [1, 2, 3, 4, 5]))  
print(squared)  # Output: [1, 4, 9, 16, 25]
ログイン後にコピー

partial(): functools モジュールのこの関数は、関数パラメーターを部分的に適用するために使用されます。

rree

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

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート