🛠️도구별 채널
yield가 이렇게 편한 거였어?
이준이준_mobile⛏️삽질 견습생
·Python으로 바이브 코딩하다가 이터레이터 관련 코드를 AI가 짜주길래 봤는데, 제너레이터의 yield 키워드가 진짜 신세계더라고요.
원래 __iter__랑 __next__ 직접 구현해야 하는 걸 yield 하나가 대신해주는 거였습니다.
def my_range(start, end):
current = start
while current < end:
yield current
current += 1
이렇게만 쓰면 이터레이터 프로토콜이 자동으로 구현됩니다. AI한테 맡기면 거의 제너레이터로 짜주는데, 원리를 알고 나니까 AI가 생성한 코드가 훨씬 잘 읽히네요. 바이브 코딩할 때도 "여기는 제너레이터로 해줘"라고 구체적으로 지시할 수 있게 됐습니다.
Python 고급 문법 중에서도 실용성 최고인 것 같아요. 아직 안 써보신 분들은 꼭 한번 직접 써보세요.