Python | Encuentra series de Fibonacci hasta n usando lambda

Los números de Fibonacci son los números en la siguiente secuencia de enteros.

0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, ……..

En términos matemáticos, la secuencia Fn de los números de Fibonacci está definida por la relación de recurrencia

F n = F n-1 + F n-2   con valores semilla F 0 = 0 y F 1 = 1.

Encuentre la serie de números de Fibonacci usando la función lambda.

Código n. ° 1: mediante el uso de lambda y el método de reducción

from functools import reduce
  
fib = lambda n: reduce(lambda x, _: x+[x[-1]+x[-2]],
                                 range(n-2), [0, 1])
  
print(fib(5))
Producción:

[0, 1, 1, 2, 3]

Explicación :

La lista que toma los dos primeros parámetros es 0 y 1, y se suma como x[-1], es decir, 0 y x[-2], es decir, 1 y se agrega a la variable x. Hay una conversión de tipo a lista y debido al reduce()método, la misma función llama y debido a la función de rango esta vez cambia el parámetro, luego agregue esto al resultado anterior y vuelva a almacenarlo en la lista.
 

Código n. ° 2: mediante el uso de lambda y la función de mapa

def fibonacci(count):
    fib_list = [0, 1]
  
    any(map(lambda _: fib_list.append(sum(fib_list[-2:])),
                                         range(2, count)))
  
    return fib_list[:count]
  
print(fibonacci(10))
Producción:

[0, 1, 1, 2, 3, 5, 8, 13, 21, 34]

Explicación:
estamos tomando la lista fib_list que ya tiene 0 y 1. Luego, en la próxima iteración, esto se usará como entrada y el resultado de su suma se agregará a la lista.

Publicación traducida automáticamente

Artículo escrito por Jitender_1998 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *