>  기사  >  백엔드 개발  >  Python의 map 함수 및 Reduce 함수 사용 소개(코드 포함)

Python의 map 함수 및 Reduce 함수 사용 소개(코드 포함)

不言
不言앞으로
2018-09-28 15:02:403522검색

이 글은 Python의 map 함수와 Reduce 함수(코드 포함)를 소개합니다. 도움이 필요한 친구들이 참고할 수 있기를 바랍니다.

map() 함수

Python의 map() 함수는 두 개의 매개변수를 받습니다. 하나는 호출 함수 객체(객체는 Python의 모든 곳에 있으며 함수는 인스턴스화되기 전에 객체로 호출될 수 있음)이고 다른 하나는 매개변수입니다. 호출하는 함수 객체입니다. 필수 매개변수인 반환 값은 반복 계산 결과로 구성된 목록입니다.

 def func(x):
     return x*x
 r=map(func,[1,2,3,4,5,6,7,8,9])
 l=list(r)
 print(l)

표시 결과:

 [1, 4, 9, 16, 25, 36, 49, 64, 81]

reduce() function

reduce 함수에도 두 개의 매개변수가 필요합니다. 하나는 호출하는 함수 객체이고 다른 하나는 함수를 호출하는 데 필요한 매개변수이며 반환 값은 다음과 같습니다. 계산 결과는 다음 요소로 계속해서 누적됩니다.

from functools import reduce
def add(x,y):
    print('x is:',x,'y is:',y)
    return x+y
ret=reduce(add,[1,3,5,7,9])
print(ret)

결과 표시:

x is: 1 y is: 3
x is: 4 y is: 5
x is: 9 y is: 7
x is: 16 y is: 9
25

파이썬의 내장 함수 sum()이 원하는 결과를 얻을 수 있는데 왜 감소가 있느냐고 물을 수도 있습니다. 다음 사례를 보면 [1,3,5,7,9]를 13579

from functools import reduce
def add(x,y):
    print('x is:',x,'y is:',y)
    return x*10+y
ret=reduce(add,[1,3,5,7,9])
print(ret)

로 반환하려고 합니다. 결과 표시:

 x is: 1 y is: 3
 x is: 13 y is: 5
 x is: 135 y is: 7
 x is: 1357 y is: 9
 13579

위 내용은 Python의 map 함수 및 Reduce 함수 사용 소개(코드 포함)의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 cnblogs.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제