관리 메뉴

A seeker after truth

map, lambda 예제 본문

Programming Language/Python

map, lambda 예제

dr.meteor 2019. 12. 9. 20:32
def two_times(numarr):
    result = []
    for i in numarr:
        result.append(i*2)
    return result

위 코드를 map을 사용할 경우 아래와 같이 변경 가능하다.

def two_times(i):
    return 2*i

list(map(two_times, [1,2,3,4]))

lambda를 사용할 경우 아래와 같다.

list(map(lambda i:i*2, [1,2,3,4]))

결과는 [2,4,6,8]로 동일.

list 내장함수는 iterable 객체를 리스트로 변환해주는 파이썬 내장 함수.

 

list(map(int, input().rstrip().split())

이런 식의 사용도 가능

 

여기서 주의. map은 그냥 기능을 하는 내장 함수.... 여서 이터레이터 객체를 반환하지, 리스트를 반환하는 것이 아님!

그래서 list, tuple을 반환하고 싶으면 map 양옆을 위 코드처럼 list, tuple로 감싸서 형변환(?)해주어야 함

 

https://dojang.io/mod/page/view.php?id=2286