Among Us - Orange Crewmate

상세 컨텐츠

본문 제목

이터레이터 활용 연습 -2(외부함수 이용)

코딩연습

by nick wilde 2023. 11. 16. 16:56

본문

반응형

<예제> 외부 함수를 이용해서 짝수값 추출하는 이터레이터 만들기

 

 

class EvenNumberIterator :
     ### 클래스 생성자의 정의
    def __init__(self, start, end, func) :
        # - 시작값
        self.start = start
        # - 종료값
        self.end = end
        # - 외부함수
        self.func = func
    ### 반복을 위한 이터레이터 함수 정의
    def __iter__(self):

       

return self
    ### 반복 결과값을 처리할 함수 정의
    def __next__(self): 
        ### 시작부터 종료까지 while 반복
        while self.start <= self.end:
            if self.func(self.start):
                result = self.start
                self.start += 1
                return result
            else :
                self.start += 1

        raise StopIteration



###짝수와 홀수를 판별하는 외부함수 정의하기
def is_even(num) :
    return num % 2 == 0

 

### 이터레이터 클래스 생성하기
even_iter = EvenNumberIterator(1,10, is_even)

### 이터레이터 반복 수행하기
for even in even_iter:
    print(even)

 

______결과 화면_____

2
4
6
8
10
반응형

관련글 더보기