파이썬에서 데이터를 반복 처리할 때, 우리는 흔히 for 루프를 사용합니다. 그런데 이 반복이 어떻게 가능한지, 그 근간에는 이터레이터(iterator)와 제너레이터(generator)라는 두 개념이 있습니다.이번 포스트에서는 이 두 개념의 차이점과 공통점, 그리고 언제, 왜 사용하는지를 명확히 정리해볼게요.🧩 이터레이터(iterator)란?이터레이터는 값을 하나씩 차례로 꺼낼 수 있는 객체입니다. 반복 가능한 객체(iterable)에서 iter() 함수를 사용하면 이터레이터가 생성되고, next()를 호출하면 하나씩 요소를 반환합니다. __iter__() 메서드를 통해 이터러블이 되고__next__() 메서드를 통해 값을 하나씩 반환합니다.특징메모리에 모든 값을 저장하지 않고 순차적으로 처리반복이 끝..