Python generador de secuencia Fibonacci

Con la siguiente función en Python podrás crear secuencias de los números de Fibonacci con la longitud que necesites. Devolverá una sencilla Tupla. He usado recursividad y una pincelada de programación funcional.

def generate_fibonacci_sequence(long: int, sequence: tuple = (0, 1)) -> tuple:
    """Returns a Tuple with a sequence of Fibonacci with the desired length.

       Arguments:
        long: Number of elements in the sequence
        sequence: Initial sequence
    """
    return (
        generate_fibonacci_sequence(long, sequence + (sequence[-1] + sequence[-2],))
        if len(sequence) < long
        else sequence
    )


print(generate_fibonacci_sequence(4))
# (0, 1, 1, 2)

print(generate_fibonacci_sequence(10))
# (0, 1, 1, 2, 3, 5, 8, 13, 21, 34)

¡Cuidado con el límite de recursiones definida por Python! Es una medida de seguridad para evita bucles infinitos. Puedes comprobar fácilmente hasta cuantas recursiones puedes hacer antes de que salte un error.

import sys
print(sys.getrecursionlimit())

Por supuesto, puedes modificarlo.

import sys
sys.setrecursionlimit(2000)

Espero que os sea de utilidad.

Este trabajo está bajo una licencia Attribution-NonCommercial-NoDerivatives 4.0 International.

¿Me invitas a un café?

Puedes usar el terminal.

ssh customer@andros.dev -p 5555

Escrito por Andros Fenollosa

enero 13, 2022

1 min de lectura

Sigue leyendo