python - 반복문 while
조건문 if문의 기본 구조
- 반복해서 문장을 수행할때 while문을 사용한다.
- while, if 모두 루프문이다.
↑ 조건문이 참인 동안에 while문 아래에 있는 <수행할 할 문장>을 반복해서 수행한다.
↑ 조건문 ' pullup < 10 ' 은 변수 pullup이 10보다 작은 동안 while문 안의 문장을 계속 수행한다.
1) 변수 pullup은 while문안에서 1씩 증가한다. ( pullup += 1 )
2) 변수 pullup이 1 증가하고 print의 문장이 출력된다.
3) 변수 pullup이 10이 될때 까지 반복된다.
4) 변수 pullup이 10이되면 if문의 print를 출력해주고 while문이 종료된다.
무한 루프
- 무한 루프란 무한히 반복한다는 의미이다.
- 무한루프는 굉장히 많이 많이 사용된다.
↑ while문의 조건문이 True이므로 항상 참이된다.
# 조건문이 항상 참일 경우 while문 안에 있는 문장들이 무한히 수행된다.
↑ 조건이 항상 참이기 때문에 print()가 무한히 실행된다.
# 무한루프를 적절히 사용하면 매우 유용한 프로그래밍을 할 수 있다.
while문 강제로 빠져나가기( break )
- while문은 조건문이 참인 동안 계속해서 while문안의 내용을 반복적 실행
- 조건 충족시 반복묵을 빠져나올 경우가 생기기 마련이다.
↑ 물한잔에 100ml으로 고정되어 있으므로 while use :에서 조건문인 use는 0이 아니기 때문에 항상 참이다. 따라서
무한히 반복되는 무한 루프를 돌게 된다.
1) while문의 내용을 한 번 수행할 때마다 ( water -= 100 ) water의 양이 100씩 줄고 있다.
2) 만약 water의 양이 0이되면 if not water: 라는 조건을 만족하게 된다.
3) if문의 print("물이 다 떨어졌습니다. 물을 채워주세요")를 실행하고 break문이 호출되어 while문이 종료된다.
↑break문이 없다면 어떻게 될까?
# 무한 루프 while문을 빠져나오지 못해 while문의 내용이 계속 실행된다.
↑간단한 정수기 작동 과정
# while True : 조건이 True이기 때문에 항상 참인 무한 반복문이다.
1) input()을 통해 변수 user_water에 수를 입력 받은 수를 저장한다.. ( input()은 항상 문자형으로 인식 ,형변환 필요 )
2) if문을 통해 변수 user_water에 해당하는 조건을 실행한다.
3) 변수 total_water가 0이 되면 break문 실행으로 무한 반복문을 빠져나온다.
조건에 맞지 않는 경우 맨 처음으로 돌아가기( continue )
- continue는 break와 달리 while문을 빠져 나가지 않고 while문 맨 처음(조건문)으로 다시 돌아가게
만들고 싶을 떄 사용한다.
↑while num<10 : 변수 넘이 10보다 작을 동안 while문을 계속 실행한다.
1) 변수 num은 while문을 실행할때 마다 1씩 증가한다.
2) if num % 2 ==0 : ( 변수 num을 2로 나누었을때 나머지가 0 이면 )
3) 나머지가 0이면 continue문을 통해 다음 문장으로 가지 않고 while문의 맨처음( 조건: num <10 ) 으로 이동한다.
4) 나머지가 1이 아닌경우만 출력이된다. ( =홀수 )
참고 --------------------------------------------------------
- 점프 투 파이썬
[ Python ] 반복문 for문 (0) | 2017.03.21 |
---|---|
[ Python ] 조건문 if (0) | 2017.03.16 |
좀 알려주세요 현기증 난단 말이에요..