이 상황에서 코드 재사용을 향상시키기 위한 전략은 무한 루프-중간에서 끝내기(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)