Passion/Python

MAP 함수

sunshout 2007. 4. 6. 21:49
map 함수는 리스트를 처리할 때 유용하게 사용된다.

예를 들어 1~10 의 값을 가진 리스트가 있는데, 이 값들의 제곱근을 구하고 싶은면

def myfunc(x):
    return x*x

map(myfunc, range(10))        ...... myfunc 함수를 10번 수행했다고 보면 됨
따라서 함수의 파라메터가 두개일 때는
map(add, range(10), range(10)) 과 같이 뒤에 리스트를 파라메터 갯수만큼 추가하면 된다.


결과 : [ 1, 4, 9, .... , 81 ]     - 리턴값은 리스트 이다.

만약 myfunc 함수가 더이상 사용되지 않으면 lambda 함수를 사용하여 해결할 수도 있다.

map(lambda x:x*x , range(10))

map(lambda x,y:x*y, range(10), range(10))