[Python] 230203 study
map
- python docu 내용을 살펴보면 다음과 같다.
map(function, iterable, *iterables)- Return an iterator that applies function to every item of iterable, yielding the results.
- If additional iterables arguments are passed, function must take that many arguments and is applied to the items from all iterables in parallel.
- With multiple iterabels, the iterator stops when the shortest iterable is exhuasted.
- iterable이란 반복 가능한 객체를 의미하며, 예시로는 list, set, tuple, range 등이 있다.
- iterator란 값을 순서대로 꺼낼 수 있는 객체로써, list, set, tuple 등의 element가 이에 해당한다.
- map은 원본 리스트를 변경하지 않고 새 리스트를 생성한다.
- 오늘 PS에서 작성한 코드 답안은 다음과 같다
-
A,B = map(int,input().split()) print(A+B)- input()은 사용자 입력값을 의미한다. 사용자 입력값에 대해 split()를 사용해 공백 기준으로 입력값을 구분한다.
- 구분된 입력값들을 mapping하기 위해 int를 사용한다. 문자열로 들어온 입력값을 정수로 변환하기 위해 map 함수의 첫째 인자값으로 int를 전달한다.
- int 함수로 사용자 입력값을 정수로 형변환하고, 각각의 값을 A와 B에 저장한다.
- 만약 A,B 2개의 변수에 대해 mapping을 요구했으나 입력값의 갯수가 다른 경우는 다음과 같은 결과를 반환한다.
- 3개 이상의 인자를 준 경우: too many values to unpack (expected ‘mapping 요구 갯수’)
- 2개 미만의 인자를 준 경우: not enough values to unpack (expected 2, got ‘받은 갯수’)