[Python] map 함수
- 파이썬의 내장 함수 map()
- 여러 개의 데이터를 한 번에 다른 형태로 변환하기 위해 사용
- list, tuple에 대해 자주 사용
▶ 사용법
- map(함수, 순회 가능한 객체)
▶ map 함수 예시 (1)
직육면체의 가로, 세로, 높이 개수를 입력받아 가로+세로+높이를 구해보자
가로(W), 세로(L), 높이(H)
case 1) map 함수 사용 X
rect = input("직육면체의 가로, 세로, 높이의 개수를 입력하세요:").split()
W = int(rect[0])
L = int(rect[1])
H = int(rect[2])
W + L + H # 가로+세로+높이 개수
- 만약 입력 받는 변수가 많다면, 하나하나 int로 바꿔줘야 하는 불편함이 있다.
case 2) map 함수 사용
W, L, H = map(int, input("직육면체의 가로, 세로, 높이의 개수를 입력하세요:").split())
W + L + H # 가로+세로+높이 개수
- W, L, H를 한번에 int로 바꿔줬기 때문에 편리하다.
▶ map 함수 예시 (2)
- 실수로 저장된 요소들을 정수로 변환
num = [1.27, 2.35, 3.19, 4.5]
num = list(map(int, a))
num
- 모든 요소에 100 곱해서 반환 (def)
# def 사용
num = [1, 2, 3, 4]
def num_100(n):
return n * 100
list(map(num_100, num))
- 모든 요소에 100 곱해서 반환 (lambda)
# lambda 사용
num = [1, 2, 3, 4]
list(map(lambda n:n*100, num))
한 번만 쓰고 말 함수에는 def 함수 대신 일회용 함수 lambda를 쓰는 것이 좋다.
'Python > Study' 카테고리의 다른 글
[Python] Numpy 반올림, 올림, 버림, 내림 하는 법 (0) | 2022.03.12 |
---|---|
[Python] 판다스, 넘파이 axis 개념 (0) | 2022.03.11 |
[Python] pd.where과 np.where의 차이 (0) | 2022.02.18 |
[Pandas] loc와 iloc의 차이 (0) | 2022.02.18 |