728x90
반응형
2023.1.6. 최초 작성
파이썬에서 반복이 가능한 객체를 iterable 객체라고 한다. iterable 객체는 매직 메소드(특수한 역할를 하는 메소드)인 __iter__ 에 의해 반복자인 iterator 객체를 만든다.
iterator 객체는 __next__ 매직 메소드에 의해 반복하며 값을 차례로 꺼내게 된다.
for 문은 iterable 과 iterator 객체를 사용하여 반복 구조를 만드는데 아래 예제 코드는 __iter__ 와 __next__ 메소드를 직접 사용한 것이다.
s = 'hello'
for ss in s:
print(ss)
if '__iter__' in dir(s):
print("__iter__ 존재함")
else:
print("__iter__ 없음")
a = s.__iter__()
if '__next__' in dir(a):
print("__next__ 존재함")
else:
print("__next__ 없음")
print(a.__next__())
print(a.__next__())
print(a.__next__())
print(a.__next__())
print(a.__next__())
[실행 결과]
h
e
l
l
o
__iter__ 존재함
__next__ 존재함
h
e
l
l
o
728x90
반응형
728x90
반응형
'프로그래밍 > Python' 카테고리의 다른 글
파이썬 for문 응용 (range, enumerate를 이용한 번지 접근) (0) | 2023.01.06 |
---|---|
파이썬 입력함수 input과 매뉴얼 (0) | 2023.01.02 |
파이썬 출력함수 print formatting (1) | 2023.01.02 |
python에서 type, id, dir 사용하기 (0) | 2023.01.02 |
PyCharm 다운로드 및 설치 (0) | 2023.01.02 |