이번엔 파이썬에서 많이 쓰이는, 솔직히 말하자면 그 어떤 언어에서도 필수적으로 쓰이는 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) |
///
이해만 한다면 쉬운 개념이다. 잘 따라와줬기를 바란다.
'코딩(파이썬)_개념' 카테고리의 다른 글
자료구조 기초 개념, 링크드리스트 Linked-list(Python, Java 등) (0) | 2022.04.17 |
---|---|
파이썬 str,int(Python) (0) | 2022.04.04 |
파이썬 탈출문자, 이스케이프 코드(Python) (0) | 2022.03.17 |
파이썬 사칙연산 하는법(Python)덧셈, 뺄셈, 곱셈, 나눗셈 (0) | 2022.03.14 |
파이썬 입력방법 Python (0) | 2022.03.13 |