Developer_Neo
[python] __iter__( ), __next__( ) 본문
반응형
iterable 객체
- for문과 함께 사용하여 각 데이터를 하나씩 처리할 수 있도록 하는 객체
- 우리가 클래스를 만들때 특정 메소드를 추가 하면코드 상에서 iterable객체로 만들 수 있다.
__iter__( ), __next__( ) 함수 2개다 작성해야한다.
class collection:
def __init__(self, size):
self.size = size
self.data = list(range(size))
def __iter__(self):
self.index = 0
return self
def __next__(self):
if self.index >= self.size:
raise StopIteration # try return
n = self.data[self.index]
self.index += 1;
return n
obj = collection(5)
for i in obj
print( i )
'''
결과
0
1
2
3
4
'''
반응형
'프로그래밍 > Python' 카테고리의 다른 글
[python] 컴프리헨션(Comprehension) (0) | 2022.01.18 |
---|---|
[python] 가비지컬렉션과 레퍼런스 카운트 (0) | 2022.01.18 |
[python] __메소드__ 정리 (0) | 2022.01.17 |
[python] 클래스 및 예외처리 (0) | 2022.01.17 |
[python] 모듈, random모듈, itertools모듈 (0) | 2022.01.17 |
Comments