Python

Python(6) - 반복문(while, for, break, continue)

개발하길잘햇다 2020. 8. 21. 01:42
반응형

반복문(Repetitive Statement)이란?

  • 문장을 반복적으로 수행
  • 정해진 동작을 반복하여 처리할 때 사용
  • 파이썬에서 제공하는 반복문

반복문


 

>  while 문

 어떤 조건이 만족하는 동안 문장을 수행하고 만족하지 않는 경우 수행 중단
 while 문 기본 문법

>>  활용 예시

▶ while문 예제 ①
 - 1부터 10까지 반복해서 출력하는 프로그램을 만들어라.

while 예제

 - 3번째 줄[print(i)] 에서 끝내버리면 i는 계속 1이기 때문에 무한대로 출력이 된다.
 - 4번째 줄은 i + 1 = i 의 표현 연산 식이고 3번째 줄에서 i를 출력하고 4번째 줄에서 1을 더하고 계속 누적 반복된다.
 - 10이라는 숫자에 도달할 때까지


결과
▶ while문 예제 ②

 - 1부터 10까지의 값을 더하는 프로그램을 만들어라.


예제 푸는순서

 

: 위 순서처럼 필요한 함수를 큰 그림에 맞게 짜고 조합하고 누적된 숫자의 변수인 sum을 출력하면 값이 나온다.
  반드시 해당 정답만 정답으로 존재하는 것은 아니다. 푸는 사람에 따라 문제 풀이 방법은 달라질 수 있다!

출력 값

 

 


 

>  for 문

반복 범위를 지정하여 반복 수행
 for 문 기본 문법
for문 형식
 리스트, 튜플, 문자열을 범위로 잡을 수 있다.
 해당 범위의 값의 개수만큼 반복한다. (무한히 반복하는 while 과의 차이점)


---------------------------------------------------------------------------------------------------------------------------


● 리스트 요소 반복
list 요소 반복 확인문



  튜플 요소 반복

tuple 요소 반복 확인문



  문자열 요소 반복
문자열 요소 반복 확인문

임의의 i 값들이 리스트, 튜플, 문자열 안에 있는 요소들의 개수만큼만 반복되고 있음을 볼 수 있다.

 

 


 

>  range( )

▶ 범위 반복에 사용
▶ range 문법

▶ 시작 값과 증가 값은 생략 가능
▶ 생략할 때 시작 값은 0, 증가 값은 1
▶ 마지막 값은 범위에 포함되지 않는다. [ex: range(1, 10) = 1 이상 10 미만]

증가값 확인예시

> 1부터 10 미만의 숫자 범위중 2씩 증가한다는 말이다. 이는 홀수를 뜻하게 된다.

 


 

>  _ 기능

▶ 이전에는 반복문을 사용하면서 iterator 역할을 위해서 i 변수가 필요했었다.
▶ for문 이후에는 interator 변수 i 가 필요하지 않게 됨
▶ 이후에 사용되지 않을 변수에 어떤 이름을 부여하고 싶지 않을 때 _ 를 사용

_기능 확인 예제

   > 6개 자리의 범위(range(6)) 에서 굳이 임의의 문자를 넣지 않고 _ 만 넣어도 동작하는 것을 볼 수 있다.
       : 숫자, 특수문자 등 넣으면 Error 발생함

 

 


 

> else 문

▶ 반복이 종료된 후에 한번 더 실행되는 문장(마무리)

else 문 확인

 > 앞 예시에 나왔던 10까지의 합을 구하는 예제이다.
    마지막 총 합의 결괏값만 출력하는 부분에서 마무리로 else를 사용해 깔끔하게 정리한 것을 볼 수 있다.

 

 


 

>  break 문

▶ 반복문을 종료시키는 기능을 한다.
break 문 확인

> 99까지 반복되어야 할 함수가 if 문 안에 있는 break에 걸려 10까지만 반복하고 종료되었다.
> 반복문에서 사용된다.

 

 


 

>  continue 문

▶ 다음 문장으로 진행시키지 않고 곧장 반복 조건문으로 이동시키는 문법

  ▷ 예시]   1에서 10까지 숫자 중 홀수만 출력하라

 - i % 2 == 0  이 뜻은 2로 나눴을 때 나머지가 0인 숫자 즉 2로 나눠 떨어지는 짝수를 의미한다.
 - 짝수에 해당이 되면 참(True)이기 때문에 continue 문장으로 이동하게 되고 이어서 다시 조건문으로 돌아간다.
 - 짝수들은 출력되지 않고 조건문으로 가고 반복 함수는 다음 숫자들로 계속 진행된다.

 

 


 

>  리스트 내포(List Comprehension)

▶ 리스트 안에 for 문과 if 문 사용

형식 예제
list 안에 for문 사용

for를 기준으로 뒤에서 반복하여 앞에서(i*2) 출력을 하는 방식이다.
list 값들을 반복하며 출력하되, 2를 곱해서 출력을 하라는 뜻이다.


list 안에 for문과 if문 사용
해석

                                      10까지의 범위를 반복하는데       [for i in range(10)]
                                      짝수인 숫자들만                         [if i % 2 == 0]
                                      2를 곱해서 출력하라                  [i * 2]

 

반응형