코딩일기

next(iter(dialog_json.values())), iter와 next는 무엇? 본문

Code/기타

next(iter(dialog_json.values())), iter와 next는 무엇?

daje 2022. 6. 25. 16:54
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
반응형
Comments