Función Python reduce()

Python 内置函数Funciones integradas de Python


Descripción

reduce()La función acumula los elementos de la secuencia de parámetros.

La función realiza la siguiente operación con todos los datos de una colección de datos (lista, tupla, etc.): utiliza la función function (con dos parámetros) pasada a reduce para operar primero sobre el 1.º y 2.º elemento de la colección, luego el resultado se opera con el tercer dato mediante la función function, y finalmente se obtiene un resultado.

Nota:En Python 3.x, reduce() se ha movido al módulo functools. Si queremos usarlo, necesitamos importar el módulo functools para llamar a la función reduce():

from functools import reduce

Sintaxis

Sintaxis de la función reduce():

reduce(function, iterable[, initializer])

Parámetros

  • function -- función, con dos parámetros
  • iterable -- objeto iterable
  • initializer -- opcional, parámetro inicial

Valor de retorno

Devuelve el resultado del cálculo de la función.

Ejemplos

Los siguientes ejemplos muestran cómo usar reduce():

Ejemplo (Python 2.x)

#!/usr/bin/python
# -*- coding: UTF-8 -*-

def add(x, y) :            # Sumar dos números
    return x + y
sum1 = reduce(add, [1,2,3,4,5])   # Calcular la suma de la lista: 1+2+3+4+5
sum2 = reduce(lambda x, y: x+y, [1,2,3,4,5])  # Usar la función anónima lambda
print(sum1)
print(sum2)

Ejemplo (Python 3.x)

#!/usr/bin/python
from functools import reduce

def add(x, y) :            # Sumar dos números
    return x + y
sum1 = reduce(add, [1,2,3,4,5])   # Calcular la suma de la lista: 1+2+3+4+5
sum2 = reduce(lambda x, y: x+y, [1,2,3,4,5])  # Usar la función anónima lambda
print(sum1)
print(sum2)

El resultado de salida de los ejemplos anteriores es:

15
15

Python 内置函数Funciones integradas de Python

Otras extensiones