728x90
map
- map(f, iterable)
- 함수(f)와 반복 가능한(iterable) 자료형을 입력 받는다.
- 리스트에 map 사용하기
- list(map(함수, 리스트))
- 튜플에 map 사용하기
- tuple(map(함수, 튜플))
map은 입력받은 자료형의 각 요소(item)에 함수 f를 적용한 결과를 묶어서 돌려주는 함수이다.
map(f, iterable)
예시
>>> map(lambda x: x+x, (1, 2, 3))
[2, 4, 6]
>>> map(lambda x, y: x/y, (1, 4, 9), (1, 2, 3))
[1.0, 2.0, 3.0]
>>> map(lambda x, y, z: x+y+z, (1, 4, 9), (1, 2, 3), (1, 16, 27))
[3, 22, 39]
사실 map()함수를 위에 처럼 사용하여 print()함수로 출력하면
<map object at 0x000000D65AD6E250>
map object 형태로 나와 결과를 확인할 수 없다. 그래서 map object에 들어있는 값을 보려면
list( ), tuple( ), set( ), next( ) 등 여러 방법으로 형태를 변환하여 보면 된다.
>>> list(map(lambda x: x + x, (1, 2, 3)))
[2, 4, 6]
>>> tuple(map(lambda x: x + x, (1, 2, 3)))
(2, 4, 6)
>>> set(map(lambda x: x + x, (1, 2, 3)))
{2, 4, 6}
d = map(lambda x: x + x, (1, 2, 3))
print(next(d)) #2
print(next(d)) #4
print(next(d)) #6
리스트에 map 사용하기
예시
>>> a = [1.1, 2.2, 3.3, 4.4]
>>> a = list(map(int, a))
>>> print(a)
[1, 2, 3, 4]
리스트 모든 요소가 int로 변환하여 다시 리스트 형태로 저장한다.
>>> a = list(map(str, range(5)))
>>> print(a)
['0', '1', '2', '3', '4']
range로 0부터 4까지 숫자 생성 후 str 문자열로 변환하여 다시 리스트 형태로 저장한다.
튜플에 map 사용하기
>>> b = (1.1, 2.2, 3.3, 4.4)
>>> b = tuple(map(int, b))
>>> print(b)
(1, 2, 3, 4)
위와 동일하며 튜플 형태로 저장한다.
>>> b = tuple(map(str, range(10)))
>>> print(b)
('0', '1', '2', '3', '4', '5', '6', '7', '8', '9')
참고 글
map object https://076923.github.io/posts/Python-23/
점프 투 파이썬 https://wikidocs.net/32#map
코딩 도장 https://dojang.io/mod/page/view.php?id=2286
728x90
'제로베이스 > 데이터분석' 카테고리의 다른 글
[소프트웨어]//GitHub 스타트! 누구나 쉽게 바로 시작하기 (0) | 2021.10.22 |
---|---|
[통계기초] 정보의 시각화. bar chart와 histogram (0) | 2021.10.19 |
[기초노트]// 판다스(pandas).doc로 공부하는 loc (1) (0) | 2021.10.15 |
[library]//정말 익숙해지고 싶은 파이썬 pandas 기능 모임(계속 추가) (0) | 2021.10.15 |
[library]//자주 보는 파이썬 mathplotlib 옵션 모임(계속 추가) (1) | 2021.10.14 |