이 상황에서 코드 재사용을 향상시키기 위한 전략은 무한 루프-중간에서 끝내기(loop-and-a-half) 관용어를 사용하는 것이다. 이 관용어를 사용하면 코드 반복을 없앨 수 있지만, while 루프를 맹목적인 무한 루프로 만들기 때문에 while 루프의 유용성이 줄어든다. 이 방식에서는 루프 흐름 제어가 모두 break 문에 달려 있다.

    bottles = []
    while True:             # 무한 루프
        fresh_fruit = pick_fruit()
        if not fresh_fruit: # 중간에서 끝내기
            break
    
        for fruit, count in fresh_fruit.items():
            batch = make_juice(fruit, count)
            bottles.extend(batch)
    신간 소식 구독하기
    뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.