パイソン・ランダ
Pythonで関数を定義するには
本明細書で説明する
1. lambda
1番目のパラメータでは、通常の関数を定義するよりも
関数型プログラミングでは, https://wikidocs.net/64 https://www.daleseo.com/python-functools-reduce/
def
キーワードを使用し、defキーワードを使用すると関数を個別に定義および呼び出すことができます.람다 함수
を使用すると、定義から呼び出しまで1行だけ必要になります.本明細書で説明する
map
、filter
、reduce
の関数において有用であるだけでなく、sort
、sorted
の関数においても明らかであるべきである.1. lambda
람다 함수
は名前がないので匿名関数とも呼ばれます.使い方は簡単です.lambda 매개변수 : 표현식
.def add(x,y):
return x+y
print(add(1,2))
Lambdaを使用して、上記のコードを次の行に表すことができます.両方の関数の結果は3です.print((lambda x,y:x+y)(1,2))
2. mapmap
関数の第1因子は関数であり、第2因子は이터러블 객체
であり、そのうち이터러블 객체
は重複可能な資料型であり、리스트
、튜플
などがある.map
関数は、이터러블 객체
の各要素に対して関数を実行し、戻る.1番目のパラメータでは、通常の関数を定義するよりも
lambda
の関数を使用する方が便利であるため、次のように使用されます.map
オブジェクトが返されるので、list
に変換する必要があります.list_a = [1, 2, 3, 4, 5]
print(list(map(lambda x: x+2, list_a)))
# 결과: [3, 4, 5, 6, 7]
3. filterfilter
関数もmap
関数と同様に、1番目のパラメータとして関数に入り、2番目のパラメータとしてリストや凡例など터러블 객체
に入る.filter
関数が最初のパラメータの関数で反復可能なオブジェクトの各要素を実行する場合、関数はtrueの値を残します.list_a=[1,2,3,4,5]
print(list(filter(lambda x: x %2==0,list_a)))
# 결과: [2,4]
4. reduce関数型プログラミングでは,
map
,filter
とともに用いられるreduce
も多く,reduce
関数は積算統計を求めるための関数である.reduce(함수, 시퀀스, 초기값)
の形態で使用できます.初期値に基づいてTypeError
を生成できることに注意してください.from functoools import reduce
reduce(lambda x, y: x + y, [0, 1, 2, 3, 4])
# 결과: 10
ソースとコメントReference
この問題について(パイソン・ランダ), 我々は、より多くの情報をここで見つけました https://velog.io/@gotaek/파이썬-람다テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol