Python generador de secuencia Fibonacci

1 minuto

Python

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.

Esta obra está bajo una Licencia Creative Commons Atribución-NoComercial-SinDerivadas 4.0 Internacional.

Atribución/Reconocimiento-NoComercial-SinDerivados 4.0 Internacional

Donación con recompensa

  • 1 café: Respondo a tu duda en los comentarios.
  • 2 cafés: Respondo en menos de 24h a tu comentario.
  • 3 cafés: Todo lo anterior y además te doy las gracias en mis redes.
Comprame un café

Comentarios

{{ comments.length }} comentarios

Nuevo comentario

Nueva replica  {{ formatEllipsisAuthor(replyComment.author) }}

Acepto la política de Protección de Datos.

Escribe el primer comentario

Tal vez también te interese...