피보나치수열은 첫째 및 둘째가 1이며 그 이후의 모든 항은 바로 앞 두 수의 합인 수열이다.
제너레이터 (generator)는 파이썬 시퀀스를 생성하는 객체이다. 제너레이터를 이용하면 전체 시퀀스를 한 번에 메모리에 생성하고 정렬할 필요없이 잠재적으로 아주 큰 시퀀스를 순회할 수 있다. 제너레이터를 순회할 때 마다 마지막으로 호출된 요소를 기억하고 다음 값을 반환한다.
제너레이터 함수는 yield문을 사용한다.
def fib_generator():
a, b = 0, 1
while True:
yield b
a, b = b, a+b
fg = fib_generator()
for n in range(10):
print(next(fg), end=” “)
실행화면
1 1 2 3 5 8 13 21 34 55