본문 바로가기
Coding/TIL & 배운것들

map()함수

by 코딩짜는 머글 2024. 10. 10.
오늘 문제를 풀면서 알게된 것들

 

map() 함수

 

기본 문법↓

 
 map(function, iterable)
 
  • function : 각 요소에 적용할 함수.
  • iterable : 함수를 적용할 데이터 집합.

map() 함수는 iterable의 각 요소에 대해 function 함수를 적용한 결과를 새로운 iterator로 반환한다. 이때, function 함수는 각 요소를 인자로 받아서 처리하며, 함수의 반환값이 새로운 iterator 의 각 요소가 된다.

또한, map() 함수는 여러 개의 반복 가능한(iterable) 객체를 입력으로 받아서 여러 개의 데이터를 동시에 처리할 수 있다. 

 
 map(function, iterable1, iterable2, ...)
 

 

예시↓

 
 def add(x,y):
        return x + y
 number1 = [1,2,3,4,5]
 number2 = [11,12,13,14,15]
 add_number = map(add, number1,number2)
 print(list(add_number))
 

 

내가 만든 예시↓

 
 def multiply(x,y):
        return x*y              # 곱셈을 해주는 함수를 만들어보았다.
 a = [1,2,3,4,5]              #이터레이터 객체의 길이를 맞추는 것도 중요하다.
 b = [3,6,9,12,15]           
 multi_num = map(multiply, a,b)

 print(list(multi_num))
 

 

 

map함수를 사용하면 코드를 좀더 간결하게 작성할 수 있고, 그렇게 함으로 가독성도 높아진다. 새로운 리스트를 생성하지 않고, iterator 객체를 반환하므로 메모리 사용량을 최소화 할 수 있다. 하지만 매우 큰 이터레이터 객체를 처리할 경우 메모리 사용량이 높아질 수 있으니 주의 해야한다. 그리고 입력된 모든 이터레이터 객체의 길이가 같아야 하므로, 이러한 제약을 고려하고 사용하여야 한다.

'Coding > TIL & 배운것들' 카테고리의 다른 글

객체 지향 설계의 5가지 원칙 (S.O.L.I.D)  (4) 2024.10.10
배열 만들기 와 뒤집기  (0) 2024.10.10
피보나치 수열  (1) 2024.10.10
Pandas 라이브러리  (1) 2024.10.09
객체와 클래스, 상속  (2) 2024.10.07