python内蔵関数:lambda、map、filter
lambda
Lambdaは小さな関数として理解できますが、文ではなく式なので、defが現れない場所ではlistなどのlambda関数を使用することができます.しかしlambda内では1つの式しか実行できません.
map関数
リスト内のすべての要素を処理する必要がある場合があります.forループを使用してこの作業を完了することができます.しかし、Pythonに内蔵されているmap関数は、関数とリストをパラメータとして受け入れ、関数処理後のリストを返します.
Lambdaは小さな関数として理解できますが、文ではなく式なので、defが現れない場所ではlistなどのlambda関数を使用することができます.しかしlambda内では1つの式しか実行できません.
- def f(x):
- return x**2
- print f(3)
-
- a = lambda x: x**2
- print a(3)
-
- a = lambda x,y: x+y
- print a(1,2)
- ~
lambda , 。
map関数
リスト内のすべての要素を処理する必要がある場合があります.forループを使用してこの作業を完了することができます.しかし、Pythonに内蔵されているmap関数は、関数とリストをパラメータとして受け入れ、関数処理後のリストを返します.
map ,
for , c 。
- def add1(a):
- return a + 1
-
- def add2(a, b):
- return a + b
-
- def add3(a, b, c):
- return a + b + c
-
- a1 = [1,2,3,4,5]
- a2 = [1,2,3,4,5]
- a3 = [1,2,3,4,5]
-
- b = map(add1, a1)
- print b
-
- b = map(add2, a1, a2)
- print b
-
- b = map(add3, a1, a2, a3)
- print b
filter , 。 , , false 。
- def add1(a):
- if a > 2:
- return True
- return False
-
- a1 = [1,2,3,4,5]
-
- b = filter(add1, a1)
- print b
filter :
- c = [b for b in a1 if b > 2]
- print c