파이썬 반복문: for, while
# 하루는 24시간이다. 24시간이 지나면 오늘은 어제가 된다.
# 시계는 00:00:00부터 23:59:59까지 하루를 휩쓸고 지나간다.
# 다시 00:00:00이 되면, 시계는 새마음으로 새롭게 출발한다.
안녕하세요~ 일호15 입니다! 프로그래밍을 한다는 건, 컴퓨터에게 일을 시키는 것과 같은데요. 그 중에서도, 반복 업무를 떠넘겨주면 금상첨화라고 할 수 있겠습니다. 게임 매크로의 자동사냥 기능을 쓰면 편해지는 느낌이라고 하면 좋을까요.
1 반복
로봇청소기의 등장은 나에겐 꽤나 충격적이었다. 우리 집에서 청소기를 돌리는 일은 내 몫이었기 때문이다. 청소기를 데리고 돌아다니는 일은 매번 지루했었다.
물론 청소기의 등장 자체도 놀라운 소식이었을 것이다. 누군가에게 청소는, 허리를 굽혀 빗자루질을 반복하는 것이었을 테니 말이다.
2 고생 끝에 낙이 온다
무한 반복은 뫼비우스의 띠와 같다. 하지만 대부분의 경우, 반복에는 끝이 있다. 언제까지 어깨춤을 추게 될 지는 모르지만, 어쨌든 결국 끝이 나긴 한다.
파이썬에서 반복문은 for, while 둘로 나뉜다. 둘다 '~동안' 이라는 뜻으로 사용된다. 일정 기간동안 고생하고 나면, 결국 낙이 오는 것이다.
3 for
1:1 면접 상황을 떠올려보자. 면접관 시점으로 상상해보겠다. 면접자가 30명 있다고 하면, 면접관은 모든 사람의 이야기를 들어봐야 한다.
총 30명의 면접자를 한명씩 차례로 만나 이야기를 나눈다. 한명한명에게 입사동기와 스펙 등을 매번 묻는다. 이것이 for 반복의 개념이다. 여럿 중 하나씩 차례로 골라 반복하는 것.
while과 대비되는 for의 특징은, 끝이 보인다는 것이다. 끝을 알고 들어가는 느낌이다. 반복 횟수가 얼마나 많든, 그 끝을 잡고 들어간다.
4 while
인디언들은 그들의 방식대로 기우제를 지낸다. 이들은 실패하는 법이 없다. 비가 오는 그날까지 기우제를 지내기 때문이다. 어제 기우제를 지냈는데도 비가 오지 않으면, 오늘 한번 더 기우제를 지낸다.
for과 대비되는 while의 특징은, 언제 끝날지 모른다는 것이다. 다만 목표를 달성하고 나면, 그 순간 반복을 끝낸다. 비가 언제 오게 될지는 모르지만, 비가 오면 기우제는 성공인 것이다.
사실 while을 쓰고도, for 처럼 끝을 잡고 반복할 수도 있다. 다만, 둘 다 쓸 수 있는 상황에서는 for를 쓰는 것이 코드를 간결하게 만드는 듯 하다.

for 시침 range(24):
for 분침 range(60):