본문 바로가기
  • 문과생의 백엔드 개발자 성장기
|Playdata_study/Python

210422_제어문1 (조건문, 반복문, 흐름제어문)

by 케리's 2021. 4. 22.

* 조건문 : if문을 통해서 조건을 구현하는 방법과 단일 if, 다중 if ~ else 구문을 숙지 및 활용
* 반복문 : 반복적이고 연속적인 구문을 while문 for문을 이용해서 간단하고 빠르게 처리
* 흐름 제어문 : 프로그램의 흐름을 제어하는 분기문을 이용해서 순차적인 프로그램을 제어하거나 흐름을 이동 

 

파이썬의 기본 구문

파이썬의 기본 구문은 상황에 따라 적합한 제어문 (control flow statements)을 사용해서 문제를 해결하도록 하며 

조건, 반복, 흐름 제어문으로 이루어진다. 

 

조건문 : 단일 if, 다중if~elif~else, 중첩 if~else구문으로 이루어지고 빈 실행문이 있다면 명령이 쓰일 곳에 pass를 작성

반복문 : while, while~else, for문 for~else, 중첩구조, pass를 작성한다. (with) 

흐름 제어문 : continue문, break문, return문 

 

조건문_ 단일 if

ex) 만일에 ~하면 ~하자.
     입력한 숫자가 양수이면 양수라고 출력하자.
     입력한 점수가 90점 이상이면 'A'학점이라고 출력하자.

 

º if문은 조건 비교 분기문의 하나로 주어진 조건을 비교해서 조건의 리턴 값이 boolean의 True, False에 따라

  명령을 제어하는 구문이다.

º if문이 조건 식의 결과가 True인 경우에는 다음 명령의 들여 쓰기 후 기술된 명령을 실행한다. 

º 조건식이 False인 경우에는 명령 처리는 아무것도 실시하지 않고 if문 다음 명령으로 처리가 이동된다.

 

[형식] > < >= <= ==!=(<>)
 if 조건문 :
           True인 경우 수행할 문장 

 

조건문 흐름도

배수

su % 2 == 0 → 2의 배수
su % 3 == 0 3의 배수
2의 배수 또는 3의 배수 (su%2==0) | (su%3==0)
2의 배수와 3의 배수  (su%2==0) & (su%3==0)
2의 배수와 3의 배수가 아닌 것? →!((su%2==0) & (su%3==0))

 

 

 

 

조건문_ if ~ else문

조건식을 평가하고 True 인 경우에는 조건식의 다음 명령을 실행하고

False 인 경우에는 else의 명령을 실행하는 구문이다. 

 

[형식] > < >= <= ==!=(<>)
 if 조건문 :
           True인 경우 수행할 문장
 else:
           False인 경우 수행할 문장

 

조건문_ 다중 if ~ else문

여러 조건식이 사용되는 경우에 조건식에 선택적으로 조건의 값의 범위를 줄 수 있어 선택문으로 사용된다.

다중 if~else구문은 하나의 if로 시작해서 여러 개의 조건을 가질 수 있는 elif를 선언할 수 있으며
반드시 마지막에서 else로 마무리가 되어야 한다. 

 

[형식] > < >= <= ==!=(<>)
 if 조건문 :
           True인 경우 수행할 문장 1
 elif 조건문:
           True 인 경우 수행 할 문장 2
 elif 조건문:
           True 인 경우 수행 할 문장 3
 elif 조건문:
           True 인 경우 수행 할 문장 4
 else:
           False 인 경우 수행 할 문장 

 

 

반복문_ while문_입력값, 메뉴 화면, for문_출력문

while문

º 조건 문을 비교해서 조건을 만족하는 경우에는 실행 문장을 수행하고
  만족하지 않으면 while문을 빠져나오는 특징을 가진다. 

º 수행되는 문장 안에는 반드시 반복 횟수를 제어하는 변수를 가지고 있어야 한다.

º 제어 변수가 없을 경우 조건문이 True가 되면 무한 루프가 된다.

 

[형식]
while 조건문 : 
        명령문:
else:
      반복 조건이 False일 경우 수행되는 문

 

ex) while 조건문 : 
              1~10 출력하고
              합을 구하는 연산....
    else:
            합만 출력하고 싶다. 

 

 

 

반복_for문

º 조건에 의한 일정한 문장을 반복 수행하는 for문은 반복을 수행할 횟수가 결정된 경우의 프로그램에

  주로 사용되는 제어문

º 리스트 또는 딕셔너리 등 반복해야 하는 횟수가 결정된 형태를 제어할 때 주로 사용된다. 

º 리스트 또는 딕셔너리 등의 순서형 자료를 in 키워드 변수 앞에 순서대로 하나씩 리턴하며 명령이 실행된다. 

º 연산식은 for문 안의 문장을 수행하고 나서 수행된다.

º 들여 쓰기로 하나의 블록으로 구분된다. 

 

[형식] 
  (시퀀스)
   for_stmt ::= "for" target_list "in" expression_list ":" suite
                ["else" ":" suite]

for 변수 in 시퀀스 = (순서형 자료형) :
               명령
else :
        명령 

ex) for res in [1,2,3,4,5]:
              pass

 

 

for 변수 in 시퀀스 = (순서 나열형) :
          명령


순서를 갖는 자료형   내장 함수 형식 range( ) , enumerate ( ),  zip ( ), items ( ) 


range(start, stop, step, size) 
enumerate( ) : 인덱스, 값(value)을 같이 저장해서 처리된다. 

 

'|Playdata_study > Python' 카테고리의 다른 글

210423_제어문2 (흐름 제어문)  (0) 2021.04.24
210422_PVM  (0) 2021.04.22
210421_시퀀스 자료형 및 표준 입,출력  (0) 2021.04.21
210420_시퀀스 자료형 및 연산자  (0) 2021.04.20
210419_Python 2  (0) 2021.04.19

댓글