쿼카러버의 기술 블로그

[Python Advanced] map함수란? (쉬운 설명 & 다양한 예시) 본문

[Python]

[Python Advanced] map함수란? (쉬운 설명 & 다양한 예시)

quokkalover 2022. 2. 5. 15:28

 

map

map()는 파이썬의 내장 함수로, 여러 개의 데이터를 한 번에 다른 형태로 변환할 때 사용한다. 주로 list, tuple과 같은 sequence를 대상으로 사용한다.

기본 문법

map(함수, sequence(순회 가능한 자료구조))
  • 위 처럼 첫 번째 매개변수는 값을 변환할 함수가 오고
    • 람다 함수도 가능함
  • 두 번째 매개변수로는 순회가능한 자료구조가 온다.
  • 또, map함수의 반환 값은 map 객체이기 때문에 해당 객체를 list나 tuple으로 형변환해주어야 한다.

사용 예시

기본적인 예시는 아래와 같다

# Python program to demonstrate working
# of map.

# Return double of n
def addition(n):
    return n + n

# We double all numbers using map()
numbers = (1, 2, 3, 4)
result = map(addition, numbers)
print(list(result))

lambda를 사용한 예시는 아래와 같다.

  • 주로 변환하려는 함수의 코드가 짧은 경우에만 lambda함수를 사용하는 것을 권장한다.
# Double all numbers using map and lambda

numbers = (1, 2, 3, 4)
result = map(lambda x: x + x, numbers)
print(list(result))

복수의 sequence를 넣은 연산을 처리하고 싶은 경우에는 아래처럼 사용할 수 있다.

# Add two lists using map and lambda

numbers1 = [1, 2, 3]
numbers2 = [4, 5, 6]

result = map(lambda x, y: x + y, numbers1, numbers2)
print(list(result))

 

 

위에서 나온 람다 함수에 대한 개념과 다양한 사용 예시가 궁금하다면 아래 글을 확인해보길 바란다.

https://etloveguitar.tistory.com/97

 

[Python Advanced] 람다 함수란? (쉬운 설명 & 다양한 예시)(map, filter, reduce)

Lambda 함수란 파이썬에서 lambda는 런타임에서 생성해서 사용할 수 있는 익명 함수다. 자바스크립트에서의 람다 함수와는 조금은 다르다. 특징 : 람다는 N개의 매개변수를 가질 수 있지만, 하나의 e

etloveguitar.tistory.com

 

추가로


파이썬에서 자주 사용되는 내장함수인 filter, reduce에 대해 글을 정리해두었는데, 필요하다면 참고하길 바란다.

[Python Advanced] filter 함수란? (쉬운 설명 & 다양한 예시)
[Python Advanced] reduce 함수란? (쉬운 설명 & 다양한 예시)

 

 

참고자료

https://www.daleseo.com/python-map/

https://blockdmask.tistory.com/531

https://www.geeksforgeeks.org/python-map-function/

Comments