본문 바로가기
Python3

map

by suychoi 2022. 2. 24.

 

map

map의 함수 모양입니다. 

map(function, iterable)

매개변수는 함수, 반복가능한 자료형(리스트, 튜플 등) 이 사용됩니다. 

 

map 함수의 반환 값은 map 객체라서 해당 자료형을 list 혹은 tuple로 변환해야 합니다. 

 

함수의 동작은 

  • 두 번째 인자로 들어온 자료형을 첫 번째 인자로 들어온 함수에 하나씩 집어넣어서 수행합니다. 

 


list 에 map 사용하기

map 은 리스트의 요소를 지정된 함수로 처리해주는 함수다. 

list(map(함수, 리스트))
tuple(map(함수, 튜플))

예시

a = [1.2, 2.5, 3.7, 4.6]
for i in range(len(a)):
	a[i] = int(a[i])
    
출력결과 [1, 2, 3, 4]

매번 for 반복문으로 반복하면서 요소를 반환할 때 map 을 사용하면 편리하다. 

a = [1.2, 2.5, 3.7, 4.6]
a= list(map(int, a))

출력결과 위와 동일

map에 int와 리스트를 넣으면 리스트의 모든 요소를 int를 사용해서 변환한다. 

그 다음에 list를 사용해서 map의 결과를 다시 리스트로 만들어준다. 


map은 리스트 뿐만 아니라 모든 반복가능한 객체를 넣을 수 있다. 

a = list(map(str, range(10)))

출력결과 
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']

input().split() 에서의 map

여러 번의 입력을 받고, 정수 실수로 변환할 때도 map을 사용할 수 있는 이유가 이것이다. 

a = input().split()

10 20

['10', '20']

위 과정을 map을 사용해서 정수로 변환하면

a = map(int, input().split())
10 20 30 

출력결과
[10, 20, 30]

맥 객체(map object)가 만들어진다. 

 


참고

링크1 링크2

'Python3' 카테고리의 다른 글

파이썬 문자<-> 아스키 코드  (0) 2022.02.24