1. map
map함수는 list 같은 자료형의 각각의 element에 대해서 같은 연산을 적용할 때 유용한 함수이다. map 함수의 문법은 map(func, A)이다. func은 A 변수의 각 element에 적용할 함수이고, A는 list, tuple와 같은 반복가능한 자료형(iterable)이다.
map 함수를 사용하지 않는다고 했을 때, 만약 실수 값들을 요소로 같는 list가 있다고 했을 때 이 요소 값들을 정수 자료형(int)로 바꾸려면 다음과 같이 code를 짜야한다.
하지만 map 함수를 사용하면 다음과 같이 간단하게 code를 짤 수 있다.
ex1>
a = [1.2, 4.3, 9.2, 2.9, 6.5]
a = list(map(int, a))
print(a)
>> [1, 4, 9, 2, 6]
ex2>
def test(x):
return x**2
a = [1, 2, 3, 4, 5]
a = list(map(test, a))
print(a)
>> [1, 4, 9, 16, 25]
-> 위와 같이 python 내장 함수 말고도 사용자 정의된 함수에 대해서도 사용할 수 있다.
2. lambda
lambda는 함수를 간단하게 정의할 때 유용한 함수이다. lambda 함수의 문법은 lambda <함수 인자>: <표현식> 이다.
lambda 함수를 사용하지 않는 경우 def를 이용해서 함수를 정의해야 한다.
하지만 lambda 함수를 사용하면 다음과 같이 간단하게 code를 짤 수 있다.
ex1>
test = lambda x : x**2
print(test(7))
>> 49
ex2>
test = lambda x, y : (x**2+y**2)**0.5
print(test(3,4))
>> 5
-> 여러 인자를 갖는 함수를 정의하는 경우
ex3>
z = (lambda x, y : (x**2+y**2)**0.5)(3, 4)
print(z)
>> 5
-> 함수 값을 바로 변수로 받는 경우
'Python' 카테고리의 다른 글
tensor - numpy - PILImage 변환 (0) | 2020.12.04 |
---|---|
Python os library에서 자주 쓰는 함수 정리 (0) | 2020.12.04 |
있어보이는 Python: try/except, enumerate (0) | 2020.11.09 |
Window Python(Jupyter Notebook)에서 tar.gz 파일로 압축 및 해제하기 (0) | 2020.11.09 |
Pytorch의 tensor GPU 연산하기(Autograd 이해하기) (0) | 2020.11.07 |