안녕세계
[Python] map 함수 본문
[Python] map 함수
Junhong Kim 2019. 1. 5. 23:38728x90
반응형
map은 입력받은 iterable object의 각 요소를 함수로 수행된 결과를 묶어서 반환합니다.
map(함수, <iterable object>)
- map은 lazy evaluation(게으른 연산)
을 진행해서 메모리를 절약합니다.
- map은 map iterator
객체를 반환합니다.
※ lazy evaluation(게으른 연산)이란?
- 계산 결과 값이 필요할 때까지 계산을 늦추는 것을 말합니다.
- iterator
, generator
객체가 해당합니다.
- next()
메소드로 데이터를 순차적으로 호출 가능한 객체입니다.
- 마지막 데이터까지 불러오면 다음은 StopIteration exception
이 발생합니다.
- iterable 객체를 iterator로 변환하고 싶다면 iter()
라는 built-in 함수를 사용합니다.
- for 문으로 looping 하는 동안, python 내부에서는 임시로 list를 iterator
로 자동 변환합니다.
예제1
numbers = map(int, input('숫자를 입력하세요: ').split())
for number in numbers:
print(number)
# 숫자를 입력하세요: 1 2 3
# 1 2 3
예제2
ret = list(map(lambda i: i ** 2, [1, 2, 3]))
print(ret)
# [1, 4, 9]
References
https://wayhome25.github.io/cs/2017/04/03/cs-03/
728x90
반응형
'Language > Python' 카테고리의 다른 글
[Python] string 자료형 (0) | 2019.01.07 |
---|---|
[Python] slice & extended slice 표기법 (0) | 2019.01.06 |
[Python] list 자료형 (0) | 2019.01.04 |
[Python] lambda 함수 (0) | 2019.01.03 |
[Python] filter 함수 (0) | 2019.01.02 |
Comments