Python | map 함수

Sua·2020년 12월 23일
0

Python

목록 보기
12/28
post-thumbnail

map 함수란?

map 함수는 리스트의 요소를 지정된 함수로 처리해준다. 여러 개의 데이터를 한 번에 다른 형태로 변화하기 위해 사용된다.

map 함수의 특징

  • map 함수는 원본 리스트를 변경하지 않고 새 리스트를 생성한다.
  • map 함수는 map 타입으로 결과를 리턴하기 때문에 리스트나 튜플 등으로 변환한다.

map 함수 사용하기

  • map(함수, 반복가능한 객체)
# 실수로 저장된 모든 요소를 정수로 변환

>>> a = [1.2, 2.5, 3.7, 4.6]
>>> a = list(map(int, a))
>>> a
[1, 2, 3, 4]
# 모든 요소에 100을 더해서 반환
>>> a = [1, 2, 3, 4]

>>> def plus100(n):
	return n + 100

>>> list(map(plus100, a))
[101, 102, 103, 104]

map 함수에 람다 식 사용하기

plus100() 함수는 map() 함수에서 한 번만 쓰고 마는 일회용 함수다. 일회용 함수를 def 문으로 정의해두는 것은 장황하고 번거롭다. 일회용 함수는 람다 식으로 표현하는 것이 좋다.

# 모든 요소에 100을 더해서 반환(람다식)

>>> list(map(lambda n: n + 100, a))
[101, 102, 103, 104]

input().split()과 map

input().split()을 사용하면 입력값을 변수 여러 개에 저장할 수 있다.

변수1, 변수2 = input().split()
변수1, 변수2 = input().split('기준문자열')

split에 기준문자열이 없다면 공백을 기준으로 입력값을 분리하여 변수에 차례대로 저장한다.

a, b = input().split() # 입력받은 값을 공백을 기준으로 분리

print(a)
print(b)

# 10 20 입력
# 출력값
10
20

하지만 여기에서 10과 20은 숫자가 아니라 문자열이다. input으로 입력받은 값은 무조건 문자열이기 때문이다. map을 통해 입력값을 정수로 변환해보자

a, b = map(int, input().split()) # 입력받은 값을 정수로 변환

본 포스팅은 아래의 사이트를 참고하여 작성되었습니다.
연오의 파이썬 https://python.bakyeono.net/chapter-6.html
코딩도장 https://dojang.io/

profile
Leave your comfort zone

0개의 댓글