Día 16 Programación Funcional

# Funciones de orden superior 
# 1 parámetro recibido es un nombre de la función del valor de retorno de la función # 2 contiene funciones

pasado como un parámetro para una función de otra función #
# DEF foo (n-): # = n-bar
# impresión (n-)
#
# barra de DEF (nombre):
# de impresión ( 'Mi nombre es% S' % nombre)
#
# # foo (bar)
# # foo (bar ())
# foo (bar ( 'Alex'))

# devuelve el valor contenido en la función
bar DEF ():
print ( 'de bar')
foo DEF ():
print ( 'de foo')
bar retorno
n- = foo ()
n- ()
DEF Hanle ():
print ( 'del mango')
volver Hanle
H = Hanle ()
H ()



DEF test1 ():
print ( 'de test1')
test2 DEF ():
imprimir ( 'de mango')
test1 retorno ()
mapear函数
mapa ( función , iterable , ...) 

MAP ()  va a hacer la función de mapeo de acuerdo con la secuencia especificada proporcionado.

La primera función de parámetros argumento para llamar a la función de la función de cada elemento de la secuencia, cada vez que la función devuelve una nueva lista de valores de retorno de la función.

>>> DEF cuadrado (X):             # calcular el número de cuadrados 
...      retorno X ** 2 
...
 >>> mapa (Plaza, [1,2,3,4,5])    # calcula el cuadrado de cada elemento de la lista 
[1, 4, 9, 16, 25 ]
 >>> mapa ( lambda X: X ** 2, [1, 2 ,. 3, 4 ,. 5])   # usando lambda función anónima 
[1, 4, 9, 16, 25 ] 
 
# dos listas, una lista de datos mediante la adición de la misma posición 
>>> mapa ( la lambda X, Y:. X + Y, [1 ,. 3 ,. 5 ,. 7 ,. 9], [2 ,. 4 ,. 6 , 8, 10 ]) 
[ 3, 7, 11, 15, 19]

función de filtro

Realización de las operaciones de filtrado en la secuencia especificada.

Su definición:

filtro (función de la función, la secuencia de la secuencia)

una función de parámetros de recepción, devuelve un valor booleano. Secuencia puede ser una lista, tupla cadena.

filter () a la secuencia de parámetros de secuencia cada elemento de la llamada a la función argumento de la función, resultado llamada es verdadero elemento de regresar como resultado de la última función () de filtro.
----------------
responsabilidad: Este artículo es RDCC blogger "El mar Hills del amor." Artículo original, siga el CC 4.0 BY-SA acuerdo de derecho de autor, que se reproduce, por favor incluya la fuente original enlace y esta declaración.
fuente original: https: //blog.csdn.net/qq_39969226/article/details/100173577

movie_people = [ ' aaa_sb ' , ' bbb_sb ' , ' ccc ' , ' ddd_sb ' ]
 # def sb_show (n): 
#      retorno n.endswith ( 'sb') 
def filter_test (func, array): 
    RET = []
     para p en matriz:
         si  no func (p): 
            ret.append (p) 
    de retorno RET
 de impresión (lista (filtro ( lambda n: n.endswith ( ' sb ' ), movie_people)))
reducir la función
reducir ( función , iterable [, inicializador ])

reducir ()  elementos de secuencia parámetro de función se han acumulado.                             

Todos los datos es una función del conjunto de datos (una lista, tupla, etc.) son los siguientes: (dos parámetros) de la primera serie de primeros y segundos elementos con la función opera en la función pasa a reducir, obtuvo los resultados de datos adicionales a la tercera función de operación de la función, para obtener un resultado final.

>>> DEF Añadir (X, Y):             # sumar dos números 
...      retorno X + Y 
...
 >>> reducir el (la suma, [1,2,3,4,5])    # lista calcula: . 2 + + + 3. 1. 4. 5 + 
15 
>>> el reducir ( lambda X, Y: X + Y, [1,2,3,4,5])   # usando lambda función anónima 
15

 

Supongo que te gusta

Origin www.cnblogs.com/douyunpeng/p/12626735.html
Recomendado
Clasificación