반응형

안녕하세요. 신기한 연구소입니다.

이번 포스팅은 반복문 또는 순환문으로 알려진 while문에 대해 알아볼게요.

그럼 while문의 기본 구조를 알아봅니다.

 

while 조건식 :

(탭) 구현부1

(탭) 구현부2

...

 

 

먼저 while문에서 조건에 사용할 변수 endCount를 선언하고 1로 할당했습니다.

while 구문은 당연히 while로 시작합니다.

그 뒤로 조건을 설정합니다.

우리는 미리 변수로 선언한 endCount를 사용했습니다. 10보다 작거나 같다는 조건입니다.

마지막에 콜론(:) 잊지 마세요.

의미는 endCount가 10보다 작거나 같다면 (혹은 참이면, 조건이 맞다면 등)

while문에서 구현한 구문을 계속 실행하면 됩니다.

while문에서 구현한 구문(바디, body)은

자동으로 탭(들여 쓰기)이 생성되고 코딩을 할 수 있게 됩니다.

탭(들여 쓰기)이 자동으로 안된다면 while문 마지막 콜론(:)을 넣었는지 확인하세요.

 

위 프로그램은 조건에서 사용할 변수 endCount를 1로 설정하고

while문 조건으로 endCount가 10보다 작거나 같은 동안(참인 동안)

탭(들여쓰기)가 된 구현부(바디)의 로직을 실행하게 됩니다.

구현부는 먼저 print()로 출력을 하고 endCount를 += 1을 사용해 1씩 증가시킵니다.

 

예측되는 결과는 "대기번호 : 1" ~ "대기번호 : 10"까지 쭉 출력될 듯합니다.

축하합니다. 원하는 결과가 나왔습니다. ㅎㅎ

지금까지 파이썬 프로그래밍의 반복문 중 하나인 while문의 기본 구조를 살펴봤습니다.

 

이제 if문도 같이 사용해서 파이썬 프로그래밍을 해볼게요.

보통 반복문은 일반적으로 for문을 자주 사용하는 편입니다.

 

while True (무한 반복)

 

while문은 무한 반복(루프)인 경우 사용하는 경우가 많습니다.

서버/클라이언트를 개발하는 경우에도 서버가 클라이언트를 대기하는 경우에

while Ture라는 무한 반복으로 구현합니다.

또한 while문 진행 시 조건에 의해 중간에서 다시 처음으로 돌아가야 하거나

조건에 의해 while문을 더 이상 진행하지 않아야 하는 경우도 있을 겁니다.

그런 경우에 사용하는 키워드가 있습니다.

좀 복잡해 보일 수 있지만 하나씩 보면 이해가 될 겁니다.

 

continue 와 break

 

먼저 변수 cnt를 0으로 할당합니다.

while문은 True로 항상 참이기에 무한 반복을 할 겁니다.

멈추는 기능이 없다면 빠져나올 수 없겠지요?

cnt가 0이면 Start를 출력합니다.

그리고 cnt에 1을 더합니다. 그럼 더 이상 Start를 실행하지 않겠네요.

progress를 출력합니다.

if 조건문을 사용해서 3으로 나눠서 나머지가 0인 경우는 

continue==를 출력한 뒤 continue를 실행하면서 다시 위로 올라갑니다.

나머지가 0이 아니면 계속 진행합니다.

그리고 cnt가 100이면 break==를 실행한 뒤

break를 실행하면서 while True인 무한 반복을 빠져나오게 됩니다.

초반부 결과를 보겠습니다.

continue==3을 보면 바로 앞 행이 progrssStart이고

progrssEnd가 없고 다시 progrssStart가 출력되었습니다.

마지막 출력 부분입니다.

cnt가 100이 되니 (if cnt == 100:)

break== 100을 출력하고

더 이상 진행하지 않고 while문을 빠져나왔습니다.

간단한 조건 판단을 기준으로 반복 순환을 하는 경우

while문이 유용하게 사용될 수 있답니다.

몇 번의 코딩 연습을 한다면 실전에서도 잘 사용할 수 있을 거예요.

좀 더 복잡한 구현부나 중첩 반복이 필요하다면 for문이 더 나을 수도 있답니다.

그래서 다음 포스팅은 for문으로 만나겠습니다.

즐 코딩하세요.

잘못된 정보나 수정이 필요하면 댓글 주세요.

아래 하트(공감) 버튼을 눌러서 더 다양한 글을 쓸 수 있게 응원 부탁드립니다. 감사합니다.

반응형