06_파이썬_while문(break,continue)
안녕하세요 Mr_ChooC(coding)AI 입니다~
While문
1.
while 문 구조
2.
while 문 break
3.
while 문 continue
이번 포스트에서는 while문에대해서 자세하게 다루어 보도록 하겠습니다. 컴퓨터는 반복작업을 사람보다 훨씬 빠르게 처리할 수 있습니다. 이러한
특징을 잘 활용해 보도록 하겠습니다. 이번에도 예제코드는 github에서
제공이 됩니다.
Github: https://github.com/Chooyoungjun/pythonstudy/tree/main/06_while
While문
우리의 삶을 보듯이 하루가 계속 반복이 되면서 살아가고 있습니다. 이
하루를 끝내려고 하면 잠들면 되죠? 물론 잠자고 일어났을 때 하루가 안 갈 수도 있지만 일반적인 경우에
대해서 생각을 하면 잠들면 하루 끝이라는 조건이 있죠? 이와 마찬가지로 반복문도 조건 true일동안 수행을 계속 하지만 false일 경우에는 반복을 멈추는
것을 알 수 있습니다.
1.
while 문 구조
위의
설명대로 조건이 참일 경우 반복 실행할 명령에 대해서 문법을 정리해 보도록 하겠습니다. 이번에 while문에 대해서 다루지만 중간 중간에 잘 모르는 부분이 있을 수도 있습니다.
그런 내용은 참조 링크를 통해서 쉽게 찾을 수 있도록 해 드리겠습니다~
[문법]
While 조건식:
조건이 참일 경우 반복
실행할 명령
위와
같은 문법으로 실행을 하면 while문을 실행 할 수 있습니다. 위의
문법만 보시고 잘 이해가 안되시죠? 실습을 바로 진행해 보도록 하겠습니다.
[실습]
간단하게
숫자를 출력하는 실습을 진행해서 코드를 이해해 보도록 하겠습니다.
위와
같이 10이하까지는 반복되어서 잘 출력 되는 것을 확인 할 수 있습니다. 이렇게 이해 하시면 되겠습니다. 위의 실습을 다시 풀어서 얘기하면
i가 10 미만 일 경우에는 true를 반환 하고 i가 10 이상을
경우에는 false를 반환하는 것을 알 수 있습니다. 그래서
while 다음 값이 false가 나오면 반복을 멈추고 true가 나오면 반복을 계속 하는 것 입니다. 혹시 관계 연산자에
대해서 이해가 안되시면 앞의 포스트(https://choocai.blogspot.com/2021/12/04.html
)를 참조해 주시기를 부탁 드리겠습니다.
2.
while 문 break
while옆에 조건식에 의해서만 반복 여부가 결정되었습니다. 그런데
굉장히 변칙이 많이 있죠. 그래서 그런 변칙반영을 해서 중간에 어떻게 중간에 반복을 멈추기 위한 break문에 대해서 알아보도록 하겠습니다.
[문법]
While 조건식1:
If 조건식2:
Break
조건식1과 2가 참일 경우 실행할 명령
위와
같이 break라는 명령어를 사용해서 중간에 반복을 멈추는 것을 가능하도록 할 수 있습니다. 실습을 통해서 자세하게 알아보도록 하겠습니다.
[실습]
위의
snapshot과 같이 i가 20이상이 아님에도 불구하고 중간에 반복을 멈추는 것을 확인 할 수 있습니다. if문과
함께 사용해서 다양한 흐름 제어가 가능 한 것을 알 수 있습니다.
3.
while 문 continue
이번에는 continue문을
통해서 특정 조건에서 continue문 아래에 있는 코드를 실행 안하고 반복문을 계속 진행하는 문법에
대해서 알아 보도록 하겠습니다.
[문법]
While 조건식1:
If 조건식2:
continue
조건식1과 2가 참일 경우 실행할 명령
위와
같이 실행하면 조건식 2가 true가 될 경우에는 아래에
있는 명령을 실행하지 않습니다. 그리고 반복문을 멈추지 않고 계속 진행을 합니다. 실습을 통해서 자세히 알아보도록 하겠습니다.
[실습]
위의
실습과 같이 skip하는 것을 알 수 있습니다. 그리고 반복은
멈추지 않고 조건식1번이 false될 때까지 진행하는 것을
확인 하실 수 있습니다.
이렇게 해서 저희는 while문에 대해서 자세하게 알아 보았습니다. 아마 지금 보시기에는 쉬워 보이지만 앞의 내용과 합쳐서 응용하시게 되시면 어려울 수도 있습니다. 이런 부분을 잘 확인해서 실력을 늘리기 위해서는 github에 있는
추가 실습도 진행해 보시기를 부탁 드리겠습니다~
Comments
Post a Comment