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.

This work is under a Attribution-NonCommercial-NoDerivatives 4.0 International license.

Will you buy me a coffee?

You can use the terminal.

ssh customer@andros.dev -p 5555

Written by Andros Fenollosa

January 13, 2022

1 min of reading

You may also like