본문 바로가기
IT지식/Python

파이썬 elif사용하기, if와 elif차이

by 모두의 향연 2021. 10. 14.
728x90
반응형

자판기를 사용한다고 할 때

 

 

 

 

if 콜라 버튼:
    콜라 나옴
elif 사이다 버튼:
    사이다 나옴
elif 식혜 버튼:
    식혜 나옴
else:
    제공하지 않는 메뉴

 

 

 

1. elif란?

else인 상태에서 조건식을 지정할 때 사용하며 else if라는 뜻. 

당연히 콜론(:) 붙여야 하며 elif를 단독으로 사용 못한다. 그리고 else가 없어도 된다.

if 조건식:
     코드1
elif 조건식:
     코드2
>>> x='콜라'
>>> 
if x=='콜라':
print('콜라입니다.')
elif x=='사이다':
print('사이다입니다.')

콜라입니다.

처음 if에서 x가 콜라인지 검사한다. 맞으면 print('콜라입니다.')를 출력한다. 다음엔 elif에서 x가 사이다인지 검사한다. 아니니까 print를 넘어간다.

 

 

2. if, elif, else 모두 사용하기
if 조건식:
    코드1
elif 조건식:
    코드2
else:
    코드3
>>> x='식혜'
>>> 
if x=='콜라':
         print('콜라입니다.')
elif x=='사이다':
         print('사이다입니다.')
else:
     print('콜라도 사이다도 아닙니다.')


콜라도 사이다도 아닙니다.

if와 elif 모두 거짓일 때만 else의 코드가 실행된다. 두 조건을 모두 만족하지 않으니 else로 가서 print 출력한다.

 

 

3. 주의할 점

if x=='콜라':
         print('콜라입니다.')
else:
         print('사이다입니다.')
elif x=='사이다':
     print('콜라도 사이다도 아닙니다.')

이런 식으로 순서 바꾸지 말 것. 무조건 if→elif→else순이다.

 

4. if만 있는 식과 if elif를 사용할 때 차이는?

a,b,c = '콜라','사이다','식혜'

if a=='콜라':
    print('콜라입니다.')
if b=='사이다':
    print('사이다입니다.')
if c=='식혜':
    print('식혜입니다.')  

출력결과:

콜라입니다.
사이다입니다.
식혜입니다.

if는 if모든 조건식을 다 검사한다.

반면에,

a,b,c = '콜라','사이다','식혜'

if a=='콜라':
    print('콜라입니다.')
elif b=='사이다':
    print('사이다입니다.')
elif c=='식혜':
    print('식혜입니다.')  

출력결과:

콜라입니다.

elif는 if부터 조건이 맞으면 그 뒤에오는 elif조건식은 검사하지 않고 그냥 건너뛴다.

즉, 가장 처음에 만족하는 코드만 실행한다.

728x90
반응형