이렇게 무한하게 도는 수열입니다.
이것을 왜 보여드리냐 하면, 파이썬의 yield을 사용하면
이 순환수가 아주 심플하게 만들 수가 있습니다
def iter_func: i =1 while True: yield i i += 1
이렇게 하면됩니다.
그리고서는 다른 함수에서
iter = iter_func() 로 선언하면 iterator로 선언이 됩니다.
그다음에는 iter.next()로 하나씩 꺼내오면 됩니다.
이게 iterator입니다, 반복자라고도 하는데,
고등학교때 배운 무한수열 이런거라고 생각하시면 쉽습니다.
표준 라이브러리의
itertools.cycle과 헷갈릴수도 있는데 itertools.cycle은 무한 반복수열입니다.
generator는 좀 더 customizing이 가능한 수열이죠..
댓글 없음:
댓글 쓰기