do/while 루프가 없다는 점도 초보 파이썬 프로그래머를 당황하게 만든다. 예를 들어, 신선한 과일이 배달돼서 이 과일을 모두 주스로 만든 후 병에 담기로 했다고 하자. 다음은 while 루프로 이 로직을 구현한 코드다.
def pick_fruit(): ... def make_juice(fruit, count): ... bottles = [] fresh_fruit = pick_fruit() while fresh_fruit: for fruit, count in fresh_fruit.items(): batch = make_juice(fruit, count) bottles.extend(batch) fresh_fruit = pick_fruit()
이 코드는 fresh_fruit = pick_fruit() 호출을 두 번(한 번은 루프 직전에 초기화하면서 호출하고, 다른 한 번은 루프의 끝에서 배달받은 신선한 과일을 다시 선택하기 위해 호출한다)하므로 반복적이다.