IT/따로 공부
[Python] iter, next 내장함수
ziasu
2021. 8. 13. 12:19
반응형
Iterable이란...?
- 반복할 수 있는 객체
- 예로는 String, List, Dictionary, Set 객체가 있음
- dir(객체)를 실행했을 때 __iter__ 매서드가 존재하는지 여부를 확인하여 객체가 iterable 한 지 확인할 수 있음
iter 함수란...?
- 객체의 __iter__ 메서드를 호출
- iter(호출가능한(callable) 객체, 반복을 끝낼값)의 형태로 사용
##callable: 객체()이런 형태로 사용 가능한지, callable(객체)를 통해 callable 여부를 확인 가능
#0~7사이의 random값이 출력되다가 random값이 3이 되면 출력을 멈춤
#iter()를 사용하려면 callable한 객체를 넣어줘야하기 때문에 lambda 사용
import random
for i in iter(lambda : random.randint(0,7), 3):
print(i)
next 함수란...?
- 객체의 __next__ 메서드를 호출
- next(반복 가능한 객체, 기본값)의 형태로 사용
##기본값을 지정하면 반복이 끝나더라도 기본값 출력
it = iter(range(4))
print(next(it,20))#0 출력
print(next(it,20))#1 츨력
print(next(it,20))#2 출력
print(next(it,20))#3 출력
print(next(it,20))#4 출력
반응형