지난 if문에 이어서 파이썬 for문을 공부하였다.
for문은 대표적인 반복문으로 비슷한 문법으로 while문이 있다.
예를 들어 비슷한 출력을 하려고 한다면 다음과 같이 쓸 수 있다.
print("대기번호 : 1")
print("대기번호 : 2")
print("대기번호 : 3")
print("대기번호 : 4")
print("대기번호 : 5")
아래는 실제 실행 화면이다.

숫자가 적을 때는 위와 같이 코딩을 하는 것이 쉬울 수 있지만 만약 숫자가 1,000까지 가면 그때는 어떻게 해야할까? 1,000번까지 일일히 숫자를 바꾸는 것은 매우 비효율적인 작업이 될 것이다. 그러할 때는 다음과 같이 for문을 통해 효율적으로 함수를 짤 수 있다.
for waiting_number in [1,2,3,4,5]:
print("대기번호: {0}".format(waiting_number))

혹은 randrange 함수를 활용할 수도 있다.
for waiting_number in range(1, 6):
print("대기번호: {0}".format(waiting_number))

for함수를 응용하여 다음과 같이 활용할 수도 있다.
버거킹 = ["A손님", "B손님", "C손님", "D손님"]
for customer in 버거킹:
print("{0}, 메뉴가 준비되었습니다.".format(customer))

for문을 통해서 많은 양의 비슷한 표현을 작성해야 할 때 매우 간결하고 효율적으로 업무를 수행할 수 있음을 공부할 수 있었다.
for문과 비슷하게 사용할 수 있는 것이 바로 while문이다.
while문은 특정 조건이 만족될 때까지 정해진 규칙을 반복하는 함수이다.
customer = "A손님"
index = 5
while index >= 1:
print("{0}, 커피가 준비되었습니다. 호출이 {1}번 남았습니다.".format(customer, index))
index -= 1
if index == 0:
print("{0}, 커피가 폐기되었습니다.".format(customer))

아래와 같이 특정 값을 입력 시에 while문이 종료되도록 작성할 수도 있다.
customer = "C손님"
person = "Unknown"
while person != customer:
print("{0}, 커피가 준비되었습니다. 데스크로 와주세요.".format(customer))
person = input("이름을 알려주세요: ")

방통댕 파이썬 과목을 배울 때도 반복문인 for문과 while문은 많이 헷갈려했던 기억이 난다. 실제로 이렇게 다시 배워도 살짝 난이도가 있게 느껴지는 것은 같다. 앞으로 스스로 다양하게 활용을 하면서 두 함수에 익숙해지도록 노력하겠다.