728x90
반응형
안녕하십니까 다제 입니다.
오늘은 iter와 next에 대해서 알아보도록 하겠습니다.
iter는 반복을 끝낼 값을 지정하면 특정 값이 나올 때 반복을 끝나게 됩니다.
이 경우에는 반복 가능한 객체 대신 호출 가능한 객체를 넣어줍니다. 이 말은 for문, while문 같은 구조로 작성하지 않아도 된다는 것을 의미합니다. 위에서 dialog_json.values()는 리스트인데, 저 리스트를 순회하겠다는 뜻이 됩니다.
- iter(호출가능한객체, 반복을끝낼값)
또한, iter는 끝내는 조건을 줄 수도 있습니다.
만약, 반복을 끝낼 값을 지정하지 않으면 어떻게 될까요?
네, 맞습니다. dialog_json.values()의 값을 모두 순회하고 종료되게 됩니다.
next는 다음 단계로 코드가 진행되도록 알려주는 것입니다. 그것 말고는 없습니다.
한번 코드를 살펴보면서 마무리 하도록 하겠습니다.
it_test = iter(range(3))
next(it_test)
>>> 0
next(it_test)
>>> 1
next(it_test)
>>> 2
next(it_test)
"""
---------------------------------------------------------------------------
StopIteration Traceback (most recent call last)
<ipython-input-34-bc1ab118995a> in <module>()
----> 1 next(it)
StopIteration:
"""
이렇게 에러가 발생하고, next(iter)가 마무리 됩니다.
참고하셔서 코드를 이해하는데 한걸음 더 정진하시길 바랍니다.
감사합니다.
728x90
반응형
'Code > 기타' 카테고리의 다른 글
인공지능 모델 훈련 완료 시, 자동 알람 & 노션 메세지 발송 설정(feat. shell, auto message) (0) | 2022.09.15 |
---|---|
parlai에 새로운 task 추가하기(feat. Adding a new task to parlai, facebook, blenderbot2, blenderbot1) (0) | 2022.07.26 |
what is python3 yield? (feat. memory ) (0) | 2022.06.09 |
screen 명령어 (0) | 2022.05.10 |
용어 정리 (0) | 2022.04.15 |