Este es mi código:¿Por qué lambda pregunta por 2 argumentos a pesar de que se le han dado 2 argumentos?
filter(lambda n,r: not n%r,range(10,20))
me sale el error:
TypeError: <lambda>() takes exactly 2 arguments (1 given)
Entonces me trataron:
foo=lambda n,r:not n%r
que funcionaba bien. Así que pensé que esto funcionará:
bar=filter(foo,range(10,20))
pero de nuevo:
TypeError: <lambda>() takes exactly 2 arguments (1 given)
Algo similar sucede para el mapa también. Pero reducir funciona bien. ¿Qué estoy haciendo mal? ¿Me estoy perdiendo algo crucial que es necesario para usar el filtro o el mapa?
'filter()' pasa un solo argumento a su lambda, cuando espera dos. Usar una variable no te permitirá evitarlo. – NullUserException