<예제> 외부 함수를 이용해서 짝수값 추출하는 이터레이터 만들기
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
프로그래머스 코딩연습- 파이썬편 (3) | 2023.11.20 |
---|---|
이터레이터 활용 연습-3(파일 불러오기) (3) | 2023.11.16 |
이터레이터 활용연습-1 (1) | 2023.11.16 |
도서관리 프로그램_데코레이터 함수 형태 (4) | 2023.11.14 |
파이썬 인코딩,디코딩 (4) | 2023.11.14 |