map함수는 map이라는 객체 성질을 가지고 있으며 map 객체로 return 한다.
그렇기 때문에 이후 자료형을 list() 혹은 tuple() 메서드를 사용해서 형 변환을 시켜주어야 이후 return 값 사용에 용이하다.
list = [1, 2, 3, 4, 5]
def add_one(n):
return n + 1
result2 = list(map(add_one, list))
>>[2, 3, 4, 5, 6]
lambda는 익명함수를 지칭하는 용어로 인라인 함수를 정의할 때 사용한다. 즉, 간단하게 함수를 만들어서 사용할 때 유용하게 사용된다. 익명함수라는 말처럼 함수의 이름이 필요하지 않다.
result = lambda x, y: x+y(1,2)
print(result)
>> 3
a = [1,2,3]
result1 = list(map(lambda x : x*2, a))
print(result1)
>> [2,4,6]
# 기본 if문
score = lambda x: "1등급" if x>= 90 else "2등급"
# 다중 if문
score2 = lambda x: "1등급" if x>= 90 else ("2등급" if x >=80 else "3등급")