이 포스트에서는 if 구문 사용법 – 조건식, 블록, 명령 관련 내용을 다뤄보려고 합니다.
Python의 if문은 다른 언어들과 비슷하지만, Java와 같은 언어와 다르게 {}를 사용하여 블록을 구분하지 않습니다.
좀 더 보기 편한 언어를 지향하고 있기 때문인 것 같습니다.
Python의 IF 문법
파이썬의 if 구문은 아래와 같은 형식으로 사용됩니다.
if 조건식 :
명령문 1
명령문 2
…
조건식에는 파이썬이 해석할 수 있는 참/거짓으로 구분할 수 있는 식만 들어갈 수 있습니다.
연산기호 등을 이용하여 참 거짓을 판별하게 할 수도 있지만, 자료형만으로도 참/거짓을 구분할 수 있습니다.
비교연산자 및 자료형 별 참/거짓 구분
비교연산자 | True / False |
a > b | a값이 b보다 크면 True / 아니면 False |
a < b | a값이 b보다 작으면 True / 아니면 False |
a >= b | a값이 b보다 크거나 같으면 True / 아니면 False |
a <= b | a값이 b보다 크거나 같으면 True / 아니면 False |
a == b | a와 b의 값이 같으면 True / 아니면 False |
a != b | a와 b의 값이 다르면 True / 아니면 False |
자료형 | True | False |
숫자 | 0이 아닌 값 | 0 |
문자 | 빈 문자가 아닌 값 | 빈 문자 “” |
리스트 | 빈 리스트가 아닌 값 | 빈 리스트 [] |
튜플 | 빈 튜플이 아닌 값 | 빈 튜플 () |
위 자료를 참고하여 조건식을 잘 구현하면 될 것 같습니다.
위 연산자를 포함하여 &&(and)이나 ||(or) 등을 통해 좀 더 복잡한 식을 구현할 수 있지만 여기서는 넘어가도록 하겠습니다.
블록(Block)
If문에서의 블록(Block)은 조건식이 충족된 후 실행되는 명령문들의 모음을 뜻합니다.
앞서 말씀드린 것과 같이 괄호 등을 사용하여 블록을 구분짓지 않기 때문에 파이썬에서는 들여쓰기를 통해 블록을 구분합니다.
여기서 주의해야할 점은 같은 블록으로 구분짓기 위해서는 같은 수의 공백을 줘야 한다는 것입니다.
그리고 tab과 스페이스바의 혼용은 안되는 것 같습니다.
Indentation Error : unexpected indent
일반적으로 웹사이트에서 코드를 복사해서 사용할 때 종종 발생하는 에러입니다.
잘 만들어둔 코드를 공유해두었더라도 웹사이트에 붙여넣는 순간 tab이나 스페이스의 경우 사이트에서 규칙으로 정해진대로 치환되는 경우가 있습니다.
그 내용을 그대로 복사해서 붙여넣게 되면 파이썬 문법에 맞지 않는 식이 되어버릴 수 있습니다.
이상으로 if 구문 사용법 – 조건식, 블록 명령 관련 글이었습니다.
기타 Python 관련 글을 더 보고 싶으시다면 Python 기본 내용 다루기 (사이트내 글 모음)을 참고해주시기 바랍니다.