Python 코드
[Python] map()
PaperDrop
2026. 1. 6. 11:23
1. map() 함수란?
map() 함수는 반복 가능한 객체(iterable)의 각 요소에 동일한 함수를 적용하여, 그 결과를 새로운 반복 객체로 반환하는 파이썬 내장 함수입니다. 반복문을 간결하게 표현할 수 있어 코드의 가독성과 생산성을 높여줍니다.
map(function, iterable)
- function: 각 요소에 적용할 함수
- iterable: 리스트, 튜플, 문자열 등 반복 가능한 객체
2. 기본 동작 원리
map()은 iterable의 요소를 하나씩 꺼내 function에 적용합니다.
그 결과들을 즉시 리스트로 만들지 않고, 필요할 때 값을 생성하는 map 객체를 반환합니다.
nums = [1, 2, 3]
result = map(lambda x: x * 2, nums)
print(list(result)) # [2, 4, 6]
3. map()과 리스트 컴프리헨션 비교
- 비슷한 기능을 하는 문법으로 리스트 컴프리헨션이 있습니다.
# map 사용
list(map(int, ['1', '2', '3']))
# 리스트 컴프리헨션 사용
[int(x) for x in ['1', '2', '3']]
- map(): 함수 적용이 명확할 때 간결
- 리스트 컴프리헨션: 조건 처리나 복잡한 로직에 유리
4. 실전 예제
(1) 문자열 숫자를 정수로 변환
scores = list(map(int, input().split()))
- 공백으로 구분된 문자열 입력을 정수 리스트로 변환
(2) 여러 값 동시에 처리
a, b = map(int, input().split())
- 한 줄 입력을 여러 변수로 바로 분해
5. map()의 장점과 주의점
○ 장점
- 코드가 짧고 명확함
- 반복문 대비 가독성 향상
- 대용량 데이터 처리 시 메모리 효율적
○ 주의점
- 결과는 map 객체이므로 바로 출력하면 안 됨
- 필요하면 list()로 변환
6. 언제 map()을 사용하면 좋을까?
- 모든 요소에 같은 처리를 적용할 때
- 입력값을 빠르게 형 변환할 때
- 간결하고 함수형 스타일의 코드를 원할 때
7. 마무리
map() 함수는 파이썬에서 매우 자주 쓰이는 기본 도구입니다. 입력 처리, 데이터 변환, 간단한 계산에서 특히 강력하며, 올바르게 이해하면 코드가 훨씬 깔끔해집니다.