ェネレータを使ってフィボナッチ数列を生成するサンプルコード

2024年6月13日

ジェネレータを使ってフィボナッチ数列を生成するサンプルコードです。この例では、指定された数以下のフィボナッチ数列を生成します。

python
def fibonacci_generator(maximum):
    a, b = 0, 1
    while a < maximum:
        yield a
        a, b = b, a + b

# ジェネレータを作成
fib_gen = fibonacci_generator(100)

# ジェネレータからフィボナッチ数列を取得して出力
print("Fibonacci Sequence:")
for num in fib_gen:
    print(num)

このコードでは、fibonacci_generator というジェネレータ関数が定義されています。この関数は、引数 maximum 以下の範囲でフィボナッチ数列を生成します。ジェネレータ内で while ループを使用し、次のフィボナッチ数が maximum を超えるまで数列を生成します。yield キーワードを使って数列の要素を一つずつ返します。

その後、fibonacci_generator 関数を呼び出してジェネレータオブジェクト fib_gen を作成し、for ループを使ってジェネレータからフィボナッチ数列を取得して出力します。

このように、ジェネレータは動的に要素を生成し、必要に応じてメモリを消費します。そのため、ジェネレータを使うことで効率的にメモリを利用しながら大規模なデータや無限のシーケンスを扱うことができます。

未分類

Posted by ぼっち