본문 바로가기
  • The future is ours
코딩(파이썬)_개념

파이썬 if구문(Python) if, elif, else

by scarlet bloom flowers once more 2022. 3. 15.
반응형

이번엔 파이썬에서 많이 쓰이는, 솔직히 말하자면 그 어떤 언어에서도 필수적으로 쓰이는 if 구문을 알아보고자 한다.

여러분이 영어를 할 줄 안다면 if와 else, else if의 의미차이를 알 것이라고 생각한다. 여러분이 생각하는대로, if는 만약~라면, elif (else if) if는 아니지만 만약 ~라면 이구, else는 다른 모든게 아니라면이다.(즉 최후의 수단. 다른 모든 것이 들어맞지 않을 때 쓰는 구문)

예시를 들어보자. 먼저 앞에서 배운대로 입력을 해주겠다.

///

a,b=map(int,input().split())

///

이렇게 입력하면 a와 b라는 각각의 수가 생기게 된다. 

예를 들어 a는 4, b는 9라고 적어보자. 누가봐도 a가 작고 b가 크다. 그렇다면 이것을 이용해, 우리는 어떤 것을 출력해볼 수가 있다.

///

a,b=map(int,input().split())

if a<b:
    print('<')
elif a==b:
    print('=')
else:
    print('>')

///

방금 배운 구문으로 새로운 식이 만들어졌다.

지금부터 하나하나 해석해보자.

먼저 if a<b. 이 식은 만약 a가 b보다 작으면 <를 출력하겠다는 것이다. 우리가 a와 b에 각각 4와 9를 적었으니, 이 구문이 작동하여 <가 출력될 것이다.

다음으로 elif a==b. 이 식은, if구문의 a<b는 아니지만, 만약에 a와 b의 값이 같다면, =등호를 출력하라는 것이다.

예를들어 5와 5를 입력했다면, if구문은 뛰어넘고, 이 구문이 작동하여 =가 출력될 것이다.

마지막으로 else다. if, elif구문 모두가 작동안했다면, 여기서는  '무조건' 작동한다.

a가 9, b가 4인 경우, if 와 elif에서 작동이 안되기에, 마지막인 else구문이 작동하여 >가 출력되는 것이다.

물론 elif a>b로 적어도 되지만, 이 식에서는 모든 구문을 알려주기 위해 else를 사용했다.

 

그리고 여기서 의문이 드는 점이 있을 수도 있다. 어? elif a==b에 왜 등호가 두개 쓰였지? 잘못적은건가?

아니다. 파이썬에서는 등호 두개가 equal이라는 뜻이다. 등호가 하나인 경우는, 앞의 문자에 뒤의 의미를 부여하는 경우이다. a==8은 a와 8이 같다는 의미이고, a=8은 a에 8을 대입한다는 뜻이다. 이 말은 즉슨, a=0이었지만, 아래에 a=8을 적는다면, 출력은 8이 출력된다. 값이 '대체'될 수 있다.

///

a=0
print(a)

///

 

///

a=0
a=8
print(8)

///

 

이해만 한다면 쉬운 개념이다. 잘 따라와줬기를 바란다.

반응형