Closed mj950425 closed 3 years ago
iterable 의 의미는 member를 하나씩 차례로 반환 가능한 object를 말한다. iterable 의 예로는 sequence type인 list, str, tuple 이 대표적이다. 우리가 사용하는 list는 iterable 하기 때문에 for문으로 인덱스 하나 하나에 접근이 가능하다고 한다. iter() 로 정의된 클래스는 전부 iterable 하다고 말할 수 있다고 한다.
Iterator 는 next() 메소드로 데이터를 순차적으로 호출 가능한 object 이다. 하지만 iterable한 객체는 전부 iterator라고 할 수는 없다고 한다.
위의 그림처럼 list는 iterator가 아니다. iterable 를 iterator로 바꿔주고 싶다면 iter() 메소드를 사용하면 된다. 우리가 사용하는 list가 next와 같이 for문으로 차례대로 호출이 가능한 이유는 for문이 자동적으로 list를 iterator로 변환해주어서 가능하다고 한다.
앗 혹시 MJ 님, iter() 함수에 iterable 한 객체를 넣으면 iterator 객체로 나오니까 iterator를 iterable하게 바꿔주고 싶다면 iter() 메소드를 사용하면 된다
이 부분 반대 아닐까요?!
앗 혹시 MJ 님, iter() 함수에 iterable 한 객체를 넣으면 iterator 객체로 나오니까
iterator를 iterable하게 바꿔주고 싶다면 iter() 메소드를 사용하면 된다
이 부분 반대 아닐까요?!
헉 맞네요!! 감사합니다
🙌 질문자
MJ
@mj950425❓ 질문 내용