■ iterable 객체 : iter 함수에 인자로 전달 가능한 객체
                 ex) 리스트, 튜플, 문자열, 파일 등

'''
hasattr 함수호출을 통해 __iter__함수가 있는지 물어봄으로써 iterable 객체인지 알 수 있다
'''
hasattr([1, 2, 3], '__iter__')	# True

 

■ iterator 객체 : iter 함수가 생성해서 반환하는 객체

 

■ 정리

 - iterable 객체를 대상으로 iter 함수를 호출해서 iterator 객체를 만든다
 - iterator 객체를 생성할 수 있는 대상이 되는 것이 iterable 객체이다
 - iterable 객체와 iterator 객체 모두 for루프의 반복 대상이 될 수 있다
 - iterable 객체가 와야 하는 위치에는 iterator 객체가 올 수 있다

 

■ 예제

ds = [1, 2, 3]
ir = iter(ds)	# iterator 객체 얻음
next(ir)	# 1
next(ir)	# 2
next(ir)	# 3
next(ir)	# StopIteration 예외 발생


# iterator를 이용한 반복문
ds = [1, 2, 3]
ir = iter(ds)
for i in ir:
	print(i, end=' ')	# 1 2 3
	

'스크립트 > Python' 카테고리의 다른 글

urllib을 이용하여 이미지 다운로드 하기  (0) 2021.05.30
람다(lambda)  (0) 2021.03.14
파일 처리  (0) 2021.03.14
파이썬 소스 작성시 권장 예  (0) 2021.03.12
파이썬 주석 종류  (0) 2021.03.11
Posted by 겨울섬
,