반응형
입출력을 하는 문제에서 map()이 무엇인지 설명하는 포스팅을 하려고 합니다.
📌 map(함수, 리스트 또는 튜플)
map에는 두 가지의 인자를 필요로 합니다.
첫 번째, 함수입니다. 두 번째 인자에 오는 값들을 적용시킬 함수를 의미합니다.
두 번째, 리스트 또는 튜플입니다. 첫 번째 인자로 들어온 함수에 하나씩 넣어서 함수를 수행시킬 때 필요합니다.
📌 map 함수 활용하기
a, b = map(int, ['1', '2'])
print(a, b) #1 2
리스트를 정수로 변환하기
첫 번째 인자에 리스트를 정수형으로 변환하기 위한 int 함수가 들어왔습니다.
파이썬에서는 문자를 정수로 변환할 때 int()를 사용합니다.
두 번째 인자에는 문자 2개를 담음 리스트를 주었습니다.
'1'과 '2'는 차례대로 int('1')과 int('2')의 과정을 거쳐서 a에 1이 b에 2가 들어옵니다.
📌 for문이 아닌 map함수를 사용하는 이유
list1 = ['1', '2', '3', '4']
result1 = []
# for문 사용
for i in range(4):
result1.append(int(list1)))
print(result1) # [1, 2, 3, 4]
# map 사용
result2 = list(map(int, list1))
print(result2) # [1, 2, 3, 4]
for문은 하나씩 int 값을 주어서 배열에 추가해줘야 하지만,
map함수를 사용하면 자동으로 리스트를 함수에 적용해서 map 객체로 반환해줍니다.
코드도 간단해지고 개발자도 편하게 사용할 수 있는 장점이 있습니다.
📌 map()과 input() 활용하기
numList = list(map(int, input())) # 123
print(numList) # [1, 2, 3]
input()에 띄어쓰기 없이 숫자를 입력할 때 map은 각 자리의 문자를 숫자로 변경해주고 값 하나하나를 배열의 값으로 만들어줍니다.
728x90
'코딩테스트' 카테고리의 다른 글
백준 입출력 문제 - f{}로 변수 출력(Python) (0) | 2023.11.25 |
---|---|
백준 입출력 문제 - try except문 활용(Python) (0) | 2023.11.25 |
JS를 활용한 코딩테스트에서 기억할 것들 (0) | 2023.08.31 |
sorted와 lambda 활용 (0) | 2022.02.13 |
List 활용 (0) | 2022.02.04 |