더북(TheBook)
>>> my_gen = make_evens_gen()     # 다시 시작
>>> next(my_gen)
2
>>> next(my_gen)
4
>>> next(my_gen)
6
>>> my_gen = make_evens_gen()     # 다시 시작
>>> next(my_gen)
2
>>> next(my_gen)
4
>>> next(my_gen)
6

make_evens_gen을 매번 호출하면 어떻게 될까? 이런 경우 매번 신규 제너레이터 객체가 생성되기 때문에 항상 처음부터 다시 시작하게 된다. 대부분 이렇게 동작하는 것을 바라지는 않을 것이다.

>>> next(make_evens_gen())
2
>>> next(make_evens_gen())
2
>>> next(make_evens_gen())
2
신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.