파이썬을 사용하다 보면 map() 함수를 자주 접하게 됩니다.
그런데 map()을 바로 출력하면 값이 보이지 않고, 주소처럼 생긴 결과만 나오죠.
왜 그럴까요?
1. map은 무엇을 반환할까?
nums = ["1", "2", "3"]
mapped = map(int, nums)
print(mapped)
출력:
<map object at 0x7f...>
map()은 이터레이터(iterator) 객체를 반환합니다.
즉, 메모리 주소만 보여주고, 내부의 값은 바로 확인할 수 없습니다.
2. 리스트로 변환하기 (형 변환)
이터레이터를 리스트로 바꾸면, 실제 값들을 확인할 수 있습니다.
converted = list(mapped)
print(converted) # [1, 2, 3]
이처럼 list() 로 감싸는 과정을 형 변환 이라고 부릅니다.
자료형을 다른 형태로 바꾸는 것이죠.
- map → list 변환
- 문자열 "100" → 정수 100 (예: int("100"))
- 정수 3.14 → 문자열 "3.14" (예: str(3.14))
정리하면
- map() 은 이터레이터 객체를 반환 → 주소만 보임
- list() 로 감싸면 실제 값 확인 가능 → 형 변환
- 형 변환은 자료형을 다른 타입으로 바꿔주는 것
'파이썬 > 기초 프로그래밍' 카테고리의 다른 글
| Python 객체 복사: Copy, Shallow Copy, Deep Copy (0) | 2025.09.13 |
|---|---|
| Python 함수 재사용: lambda보다 내부 함수 구조가 좋은 경우 (0) | 2025.09.13 |
| Python 익명 함수(lambda) vs 일반 함수(def) (0) | 2025.09.13 |
| Python globals()로 동적 전역 변수 만들기 (0) | 2025.09.13 |
| Python에서 locals()로 함수의 로컬 영역 확인하기 (0) | 2025.09.13 |