반복문(while)이란?
for와 같은 반복문으로, 특정 조건이 만족 하지 못하면 탈출하지 못하고 계속 반복한다.
1. while의 작성
while 조건문:
수행할_문장1
수행할_문장2
수행할_문장3
...
이처럼 조건문 앞에 while을 붙이고 실행하면 계속 반복된다.
1-1) 무한루프
다음 예시를 들자.
customer = "정상길"
index = 1
while True:
print("{0}님, 커피가 준비되었습니다. 호출 {1}회차".format(customer,index))
index += 1
# 계속 반복될 것 --> 무한루프 --> ctrl + c로 강제종료
"엄준식님, 커피가 준비되었습니다. 호출 ????회차." 가 무한히 반복될 것이다.
이는 무한 루프로, 말그래도 터미널에 무한이 반복문이 출력되는 것이다.
ctrl +c를 통해 탈출하자.
2. 응용
customer = "엄준식"
index = 3
while index >= 1:
print("{0}님, 커피가 준비되었습니다. {1}번 남았습니다.".format(customer, index))
index -= 1
if index == 0:
print("커피는 폐기되었습니다🙏")
엄준식님, 커피가 준비되었습니다. 3번 남았습니다.
엄준식님, 커피가 준비되었습니다. 2번 남았습니다.
엄준식님, 커피가 준비되었습니다. 1번 남았습니다.
커피는 폐기되었습니다🙏
엄준식님, 커피가 준비되었습니다. 2번 남았습니다.
엄준식님, 커피가 준비되었습니다. 1번 남았습니다.
커피는 폐기되었습니다🙏
카페에 음식이 준비되면 세번 호출 시 폐기하는 정책이 있다고 가정하자.
위처럼 인덱스가 3부터 -1씩하며, 0이 되면 if문의 문장을 출력하도록 할 수도 있다.
customer = "엄준식"
person = "unknown"
while person != customer:
print("{0}님, 커피가 준비되었습니다.".format(customer))
person = input("이름이 어떻게 되시죠?")
# 엄준식 입력 시 탈출하며 종료
엄준식님, 커피가 준비되었습니다.
이름이 어떻게 되시죠?정상길
엄준식님, 커피가 준비되었습니다.
이름이 어떻게 되시죠?김찬호
엄준식님, 커피가 준비되었습니다.
이름이 어떻게 되시죠?엄준식
PS C:\Users\이석용\Desktop\Python Practice>
이름이 어떻게 되시죠?정상길
엄준식님, 커피가 준비되었습니다.
이름이 어떻게 되시죠?김찬호
엄준식님, 커피가 준비되었습니다.
이름이 어떻게 되시죠?엄준식
PS C:\Users\이석용\Desktop\Python Practice>
위의 코드처럼 카페 직원이 이름을 맞는 이름을 input하면 탈출하며 종료한다.
'코딩 > Python' 카테고리의 다른 글
16) 함수 (0) | 2023.08.23 |
---|---|
15) continue와 break (1) | 2023.07.21 |
12) if (0) | 2023.07.21 |
11) 자료형 구조의 변경 (0) | 2023.07.18 |
10) 집합(set) (0) | 2023.07.18 |