본문 바로가기
PL (Programming Language)/Python

[Python] 조건문 if, elif 그리고 else문

by jangThang 2022. 2. 13.
반응형

 

[ Contents ]

     

     

    1. 조건문 if

    if 조건:
        행위

     조건문 if는 "만약 ~라면" 이라는 가정의 뜻을 가지고 있습니다. '조건'이 충족되면 '행위'를 실행하고, 그렇지 않으면 실행하지 않습니다.

     

     조건문에는 비교 및 논리연산자로 구성된 식이 들어갑니다. 위 조건문은 2 < 3 이므로 True이며 실행됩니다.

     

     

     반면, 조건이 거짓(False)이면 실행되지 않습니다.

     

     

     여기서 주의하실 점은 'Tab'입니다. if문의 행위 부분은 'Tab'으로 들여쓰기 해야합니다. 들여쓰기된 부분만 조건에 따라 실행됩니다. 

    (pass는 아무런 행위를 안할 때 쓰는 문구입니다.) 

     

     

     

    2. if - elif - else문

    if 조건1:
        행위1
    elif 조건2:
        행위2
    (elif 조건n: . . .)
    else:
       위 조건이 아닐 때 실행

      여러 개의 조건을 묶어서 사용할 수 있습니다. if문부터 차례차례 조건을 검사하며, 조건이 True이면 해당 행위를 실행합니다. 조건 만족 시, 바로 if - else문을 빠져나오며 밑의 조건은 검사하지 않습니다.

     

     

     위 코드를 보면, 78은 60보다 크므로 "B"도 출력할 것 같지만 "B+"만 출력합니다.

     score >= 70에서 조건이 성립해서 이미 if-else문을 빠져나왔기 때문입니다.

     

     

     맨 마지막 else문은 앞선 조건문들이 모두 거짓일 때 실행됩니다. score가 -10점이든 "꽝"이든 모두 실행됩니다.

     

     

     if-else문은 위에서부터 차례차례 검사하므로, 조건문의 순서도 중요합니다. 위와 같이 반대로 조건을 검사할 경우, C+조건에 걸려서 밑의 조건은 무시하게 됩니다.

     

     

     

    3. 백견이 불여일행

    1) 중첩 if-else문

     if - else문 안에 또 if - else문을 사용할 수 있습니다. 이를 '중첩' if-else문이라고 합니다.

     각 if - else문이 잘 구분되도록, 들여쓰기에 주의하셔야 합니다.

     

     

    2) 실행

     

     실행은 되지만, 다소 복잡해보입니다. 이러한 중첩 if - else문은 코드 효율이 좋지 않을 뿐더러, 가독성도 나쁩니다.

     그 대신 논리연산자를 사용하면 if - else문을 중첩해서 사용하지 않더라도, 보기 좋게 구현할 수 있습니다.

     한번, 논리연산자를 이용해서 위 조건문을 바꿔보세요!

     

    2022.01.24 - [PL (Programming Language)/Python] - [Python] 파이썬 연산자와 자동 형변환(캐스팅, Casting)

     

    [Python] 파이썬 연산자와 자동 형변환(캐스팅, Casting)

    2022.01.23 - [PL (Programming Language)/Python] - [Python] 변수(Variable)와 자료형(Data type) [Python] 변수(Variable)와 자료형(Data type) 2022.01.23 - [PL (Programming Language)/Python] - [Python] p..

    star7sss.tistory.com

    (파이썬 논리 연산자 관련 글)

     

    star가 되고나서 Tistory

    반응형

    댓글